1、 8位、16位、32位的位是什么? 指CPU处理的数据的宽度,参与运算的寄存器的数据长度。
2、 51和ARM 32位 在51
单片机里面,R0和R2都是8位的,所以51的CPU一次只能处理8位数据。 在ARM
里面,R0和R2是32位的,所以ARM的CPU一次能处理32位数据。
3、进一步解释 单片机在进行计算的时候统统是2进制数的运算。所以8位单片机和16位单片机的最根本区别就是,8位单片机可以同时进行2个8位的2进制数相加,而16位单片机则大一倍,可以同时让2个16位的2进制数相加。 CPU
能同时处理二进制数的位数是多少位,就称其是多少位的计算机。也有数据总线的位数是CPU位数的一半的情况,就称其是准多少位的计算机。比如CPU是16位,数据总线也是16位,则是16位计算机;CPU是16位,数据总线也是8位,则是准16位计算机。
4、8位机可以进行32位数据类型定义吗? 8位单片机是CPU一次处理数据的宽度,8位芯片可以定义8位、16位、32位的变量,
但是不同的数据类型的运算速度和存储空间差别较大。 (1)8位的char类型,C语言源码 汇编:
(2)short类型
汇编:
(3)float类型
汇编:
总结: 可以看出在C语言的层面并没有区别,但是实际工作量都在汇编层完成,并进行了封装。