首页 > 自考资讯 > 高考百科

8位和32位单片机最本质区别,2分钟看懂!(8位单片机与32位单片机)

小条 2024-10-08

8 位或32 位微控制器是什么意思?

要理解这个问题,首先需要了解微控制器的哪些组件是8位或32位的。

3c05eb0e363c4092a91a2ba97b9408a7~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=3YYvaRAhdFHka20edj6snIHymgE%3D这是微控制器的内部框图。大家可以看到,单片机内部不仅集成了CPU,还集成了很多其他组件。

336a841f9c2544f49831ff1cb9ab8591~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=2XBg6moDR5t6a8Mb0CpxSiaPFYo%3D 通常所说的该单片机的位数就是该单片机CPU的位数,与任何其他部件无关。

CPU也是由很多部件组成的,而真正决定微控制器或处理器的实际位数取决于ALU,即算术逻辑单元(Arithmetic Logic Unit),即逻辑单元。

33619e99aa4a43e08a77417d2edb3ec5~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=jsZ8kzqWJQVBZqT%2FQ%2BwMML9ViRk%3DCPU是单片机的核心,ALU是CPU的核心。

所有CPU 运算都依赖于ALU,ALU 专门用于执行算术和逻辑运算,例如加法、减法、乘法、除法、AND 或NOT。

4ed4d48a5b5c456babdaae4a3d74c68c~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=fyIGexZVddT2EqmY8%2BH5d6PNcYU%3D 我们这里讨论的是这个微控制器的位数。事实上,我们谈论的是8位微控制器中ALU的数量。

A和B是数据输入,Y是输出

8 位ALU 一次最多可以处理8 位数据。

例如,计算两个8 位二进制数的加法:

只要将两个8位二进制数输入到A和B中,输出就可以计算出这两个8位二进制数的和。

40b3e4e692684c0aac77ba914c4abfbe~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=bQifnG1Rkzce4IEKYewgjSfFCRY%3D 32位微控制器的ALU是32位的,可以一次计算两个32位二次值的相加。

8位机器可以执行16位或32位计算吗?

这也是可以的,但是比较麻烦。例如,在对8位单片机进行编程时,定义的数据类型int是16位,8位计算机必须将这个16位数字拆分成两个字节。请分别计算。

c6607971f22f457caeafa1838e8b5fc5~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=K7uDEUWeNibGmRAJXUUDTzsYIEg%3D 这同样适用于在8 位计算机上计算32 位数据。因此,8 位微控制器必须拆分32 位数据。 4个字节需要单独计算。

对于32位微控制器来说,它的ALU是32位的,只需要一次运算就可以计算出32位数据。

977d37aa53914e57915ebafd32839df7~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=AJLQNlHfyL%2FeoHiQFbJ4%2FotMo64%3D这是32位微控制器的优势。

当计算8 位数据时,8 位或32 位微控制器的速度大致相同。

ALU和其他部件依靠数据总线来传输数据,所以8位单片机中的8位一般是指数据总线8位宽。

但其本质仍然是ALU一次能够处理的最大数据位数。

例如,当数据总线发送数据时,它在RAM的特定字节中存储0101 0000。然而,RAM 内存中有很多字节。如何决定存储数据的字节?

这依赖于地址总线,该总线允许您指定要在RAM 内存中存储数据的字节。

06206c4a0b594623a6281c94db9d4e3e~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=ZGpdPF%2B7CwBpGKtec5d%2BJoudLRo%3D RAM 存储器的开头有一个地址解码器组件。

这是一个具有2 个输入和4 个输出的2 位解码器。

如果输入00,第一行将输出1(高电平),此时只能将第一个RAM 字节写入数据总线。

给定输入10,第二行输出1(高电平)并指向第二个RAM 字节。

同样,每路输出1都可以独立控制。

总共有四个不同的输入,每个不同的输入对应一条高电平输出线。

cfc8ffa0bf064c36b4554cadf6f2d98f~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=aLzJH%2B60EYZu%2BZ0rG3DDoermA3g%3D 本来8位微控制器有8位地址总线,相应的RAM内存地址译码器也是8位的。

在这种情况下,您最多可以寻址256 个字节。这意味着该微控制器的RAM值最多可以扩展到256字节。

2bedec47806c47dda64ec3d7a7089385~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=jY1YGbZFNjDdaIZNjXCdIgEO9Rw%3D 后来,8位机器上的地址总线扩展到16位,对应64 KB的RAM空间。但数据总线是8位的,所以它是一个8位的微控制器。

d4a1f997ed444c938d65923ba8659ad8~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=%2FdbPhUtHNRMUDtYGogqMIh%2F3Pi0%3D随着技术的发展,64KB内存逐渐不能满足人们的需求。

这就利用了32位CPU的优势,它不仅具有32位数据总线,而且还将地址总线扩展到32位。

这样,可寻址的内存空间就达到了42亿字节,即4GB,但4GB的内存空间在嵌入式世界中很少使用。

b6254a73e73d4521878efcf6a5a06fe4~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=lKAa2XlweO5DpxC8junQgTcKKrs%3D 在嵌入式领域,用不到那么多内存,但是在计算机方面,CPU对RAM的要求非常高,比如对于32位计算机处理器来说,4GB已经不能满足人们的需求了。不能。同样的故事稍后还会出现。 32 位处理器正在被淘汰,64 位处理器正变得越来越流行。

91fd981555bf42ee9ce8d14b529953d8~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1729001374&x-signature=mlqUJnm9m9n%2BzrfDuMgTM2GguNw%3D这是我对8位和32位单片机的理解。我希望这有帮助。

版权声明:本文转载于网络,版权归作者所有。如有侵权,请联系本站编辑删除。

猜你喜欢