×

cpu的类型不同可能有不同的字长并且总是的整数倍

CPU的字长是什么?CPU知识~

admin admin 发表于2022-04-18 13:57:23 浏览173 评论0

抢沙发发表评论

CPU的字长是什么

计算机的字长是有CPU决定的,指的是CPU的指令长度。如果是编程的话,汇编部分可以由CPU决定,大部分有编译器决定,和操作系统无关。但是编译器能否使用,有操作系统决定,也就是说操作系统只是限制了CPU字长而不是由它决定的。字长是指同时参与运算的数的二进制位数,它决定着寄存器、加法器、数据总线等设备的位数,因而直接影响着硬件的代价,同时字长标志着计算机的计算精度和表示数据的范围。为了方便运算,许多计算机允许变字长操作,例如半字长、全字长、双字长等。一般计算机的字长在8~64位之间,即一个字由1~8个字节组成。微型计算机的字长有8位、准16位、16位、32位、64位等。字长是指同时参与运算的数的二进制位数,它决定着寄存器、加法器、数据总线等设备的位数,字长是直接用二进字长图册制代码指令表达的计算机语言,指令是用0和1组成的一串代码,它们有一定的位数,并分成若干段,各段的编码表示不同的含义,例如某台计算机字长为16位,即有16个二进制数组成一条指令或其它信息。16个0和1可组成各种排列组合,通过线路变成电信号,让计算机执行各种不同的操作。

CPU知识~

“G”是“10亿”英文缩写。1G=1000M。“M”是英文“miliion”的所写,意思是"百万"。Hz是物理上,频率的单位。念作“赫兹”。1Hz表示一秒钟震荡一次。举例:如果一个钟摆一秒钟摆动一次,那么可以说他的频率就是1Hz.如果一秒钟他摆动100次,那么就是100Hz.不过Hz是用在电子科学上的单位,如上的比喻不过是为了好理解。cpu里面也是一样,不过表示的电子的震荡频率。2.4GHz表示的就是,在这个处理器中,电子时钟每秒钟震荡了2400000000次。这个表示的就是处理器的主频。这个数据从“一个方面上”表明了cpu的性能。但是不表示所有cpu性能的对比。举例来说,假设cpuA,频率是1GHz.和cpuB,频率是2GHz.这个是不是表明cpuA性能不如cpuB呢?不一定。因为,如果cpuA虽然频率只有1Ghz,但是每次震荡(就是每Hz)能够处理3个数据。而cpuB虽然频率是2GHz,但是每次震荡只能处理1个数据。那么你说哪个强呢?肯定是频率低的cpuA反而强。所以cpu的频率只能在设计相似的cpu中进行比较。不同设计的cpu比较频率并不能比较出性能高低。例如P4只能和P4比较频率。酷瑞2只能和酷瑞2比较频率。如果直接比较他们的频率来比较性能的话,得出的结果是错误的。影响cpu性能的因素很多,对于不懂的人来说无从辨别。其实你记住一个真理就是了。一分钱一分货。价格相近的cpu,性能相近。因此,外行买cpu的时候从价格上来比较最好。

一个基础问题:CPU字长、主存字长、寄存器字长的概念和倍数关系是怎样的

32位乘除法:mulebxebx*eax结果在edx:eax中result=edx:eax乘积占用两个寄存器moveax,dwordptrxmovedx,dwordptrxdivebxresult=eax,remain=edx16位乘除法:mulbxbx*ax结果在dx:ax中result=dx:ax乘积占用两个寄存器movax,dwordptrxmovdx,dwordptrxdivbxresult=ax,remain=dx商在ax余数在dx16为CPU加减法,一次16位乘法16位乘16位结果32位除法32位除16位结果16位商16位余数计算机字长是CPU寄存器的长度,通常一次只能读写一个寄存器长度的数据。内存没有这个说法,只有编址的方法;intelCPU都是字节编址的。无论是8,16,32,还是64位CPU;地址都是以字节(8位为一个单元)为单位的。有些CPU不是这样的。可能是16位或者32位编址的。一次读写操作总是16位或32位对齐的。