发新帖我要提问
12
返回列表
打印
[应用相关]

请问,怎么才能实现并行处理,例如在STM32或者C51处理器中

[复制链接]
手机看帖
扫描二维码
随时随地手机跟帖
21
nstel| | 2016-8-10 10:54 | 只看该作者 回帖奖励 |倒序浏览
单片机C语言,不能处理复杂任务。只能顺序执行。VC可以,但那是操作系统的功劳。

使用特权

评论回复
22
nstel| | 2016-8-10 10:58 | 只看该作者
C语言的函数,一定是汇编语言编写得。所以,汇编语言无所不能!

使用特权

评论回复
23
白菜爱吃白菜| | 2016-8-10 11:08 | 只看该作者
nstel 发表于 2016-8-10 09:29
并行,可以是指令级并行,也可以是任务及并行,还可以是分段级并行!
指令级并行,多核处理器也做不到。就 ...

从未见过如此高言

我猜这段字是脸滚键盘打出来的

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
玄德 + 1 同感。
24
nstel| | 2016-8-10 11:12 | 只看该作者
白菜爱吃白菜 发表于 2016-8-10 11:08
从未见过如此高言

我猜这段字是脸滚键盘打出来的

投机取巧的人,看不懂。真的想要编制高质量程序的人,就能看懂了。

使用特权

评论回复
25
小鱼儿1045| | 2016-8-10 11:38 | 只看该作者
感觉单片机和电脑的CPU一样,一个时间段只能执行一个任务,不可能存在真正的并行的,那些肉眼看上去的并行,只不过是任务切换太快了,让我们感觉是并行罢了!

使用特权

评论回复
26
datouyuan| | 2016-8-10 11:48 | 只看该作者
nstel 发表于 2016-8-10 10:58
C语言的函数,一定是汇编语言编写得。所以,汇编语言无所不能!

你的看法和大多数人相反.

像C之类的高级语言就是为了解决汇编很难做太复杂的项目才出现的.

使用特权

评论回复
27
nstel| | 2016-8-10 11:53 | 只看该作者
datouyuan 发表于 2016-8-10 11:48
你的看法和大多数人相反.

像C之类的高级语言就是为了解决汇编很难做太复杂的项目才出现的.

高级编程人员,不会是大多数。

使用特权

评论回复
28
nstel| | 2016-8-10 11:57 | 只看该作者
C语言编程者认为复杂的项目,用汇编能很容易的就解决了!
C语言编程者认为很容易的项目,汇编就很难做了。
比如:英特网通信。汇编很难做,而C语言就很容易做了。

使用特权

评论回复
29
JasonWangSE| | 2016-8-10 12:55 | 只看该作者
可以同时执行多条指令的并行只能通过多核处理芯片来实现;你问的“单核CPU为什么却能够并行处理”应该指的是多任务吧,这个是靠运行在上面的操作系统来完成的,每个任务在内存中都有一个TCB,哪个任务得到CPU,操作系统负责把它的TCB中的信息load到CPU的寄存器中去执行,等到这个任务挂起了,操作系统把CPU当前的寄存器都保持到这个任务的TCB中,再load下一个要执行的任务的TCB,这样不停地调度,频率很高,在你看起来就像是多个任务同时跑一样,如果想详细了解建议查看操作系统相关的书籍和代码

使用特权

评论回复
30
datouyuan| | 2016-8-10 14:02 | 只看该作者
nstel 发表于 2016-8-10 11:53
高级编程人员,不会是大多数。

高级编程人员的"高级"不应该是靠用不用汇编来体现的.

使用特权

评论回复
31
yklstudent| | 2016-8-10 14:16 | 只看该作者
一个个把汇编吹上天了,希望大牛推荐些汇编方面的资料

使用特权

评论回复
32
ta1ent| | 2016-8-10 15:38 | 只看该作者
本帖最后由 ta1ent 于 2016-8-10 20:52 编辑

单核计算机都是微观串行,宏观并行的。
前后台程序:一个后台,n个中断服务
有了操作系统以后:操作系统管理任务调度,实现多任务并行。

使用特权

评论回复
33
m564522634| | 2016-8-10 15:40 | 只看该作者
你先理解了什么是并行处理在说吧

使用特权

评论回复
34
JasonWangSE| | 2016-8-10 18:14 | 只看该作者
ta1ent 发表于 2016-8-10 15:38
单核计算机都是微观串行,宏观并行的。
前后台程序:一个前台,n个中断服务
有了操作系统以后:操作系统管 ...

中断是前台吧?

使用特权

评论回复
35
ta1ent| | 2016-8-10 20:52 | 只看该作者

嗯嗯。是的。中断是前台。

使用特权

评论回复
36
strong161| | 2016-8-10 22:57 | 只看该作者
  除了硬件能并行,软件是无法并行计算的,软件所谓的并行计算都只是轮着算。只有硬件并行才是真正的并行。

使用特权

评论回复
37
qbasicljx| | 2016-8-11 09:33 | 只看该作者
一块板上面可以多个单片机啊
但是实现一种功能上面 只用到其中一个单片机吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则