首页 > 编程知识 正文

什么叫指令字长,机器字长,存储字长,什么是机器字长,指令字长,存储字长

时间:2023-05-03 19:22:34 阅读:228580 作者:702

计算机组成原理——机器字长、指令字长、存储字长 字长:

字长:
一个字中的二进制位的位数,是计算机系统结构中的一个重要特性。字长在计算机结构和操作的多个方面均有体现。计算机中大多数寄存器的大小是一个字长。计算机处理的典型数值也可能是以字长为单位。CPU和内存之间的数据传送单位也通常是一个字长。还有内存中用于指明一个存储位置的地址也经常是以字长为单位的。现代计算机的字长通常为16、32、64位。

通常称处理字长为8位数据的CPU叫8位CPU,32位CPU就是在同一时间内处理字长为32位的二进制数据。二进制的每一个0或1是组成二进制的最小单位,称为位(bit)。常用的字长为8位、16位、32位和64位。字长为8位的编码称为字节,是计算机中的基本编码单位。
字长与计算机的功能和用途有很大的关系,是计算机的一个重要技术指标。字长直接反映了一台计算机的计算精度,为适应不同的要求及协调运算精度和硬件造价间的关系,大多数计算机均支持变字长运算,即机内可实现半字长、全字长(或单字长)和双倍字长运算。在其他指标相同时,字长越大计算机的处理数据的速度就越快。早期的微机字长一般是8位和16位,386以及更高的处理器大多是32位。市面上的计算机的处理器大部分已达到64位。字长由微处理器对外数据通路的数据总线条数决定。

机器字长

机器字长:
计算机能直接处理的二进制数据的位数。机器字长通常与主存单元的位数一致。计算机中运算器进行算术运算和逻辑运算。机器字长也就是运算器进行定点数运算的字长,通常也是CPU内部数据通路的宽度。

机器字长反映了计算机的运算精度,即字长越长,数的表示范围也越大,精度也越高。机器的字长也会影响机器的运算速度。倘若CPU字长较短,又要运算位数较多的数据,那么需要经过两次或多次的运算才能完成,这样势必影响整机的运行速度。
机器字长与主存储器字长通常是相同的,但也可以不同。不同的情况下,一般是主存储器字长小于机器字长,例如机器字长是32位,主存储器字长可以是32位,也可以是16位,当然,两者都会影响CPU的工作效率。

指令字长

指令字长:
一个指令字中包含二进制代码的总位数。指令字长取决于从操作码的长度、操作码地址的长度和操作码地址的个数。不同的指令的字长是不同的。早期计算机的存储字长一般和机器的指令字长与数据字长相等,故访问一次主存便可取一条指令或一个数据。随着计算机的应用范围的不断扩大,解题精度的不断提高,往往要求指令字长是可变的,数据字长也要求可变。为了适应指令和数据字长的可变性,其长度不由存储字长来确定,而用字节的个数来表示。1个字节(Byte)被定义为由8位(Bit)二进制代码组成。当然,此时存储字长、指令字长、数据字长三者可各不相同,但它们必须是字节的整数倍。

指令字长等于机器字长的指令,称为单字长指令
指令字长等于半个机器字长的指令,称为半字长指令
指令字长等于两个机器字长的指令,称为双字长指令

例如,IBM370系列,它的指令格式有16位(半字)的,有32位(单字)的,还有48位(一个半字)的。

早期计算机使用多字长指令的目的,在于提供足够的地址来解决访问内存任何单元的寻址问题。但是使用多字长指令的缺点是必须两次或三次访问内存以取出一整条指令,这就降低了CPU的运算速度,同时又占用了更多的存储空间。

在一个指令系统中,如果各种指令字长是相等的,称为等长指令字结构,它们可以都是单字长指令或半字长指令。这种指令字结构简单,且指令字长度是不变的。如果各种指令字长度随指令功能而异,就称为变长指令字结构。这种指令字结构灵活,能充分利用指令长度,但指令的控制较复杂。随着技术的发展,指令字长度逐渐变成多于32位的固定长度。

指令字长固定:指令字长小于等于存储字长
指令字长可变:按字节的倍数变化

存储字长

存储字长:
一个存储单元存储二进制代码的位数。存储字长可以是8位、16位、32位等。早期计算机的存储字长一般和机器的指令字长与数据字长相等,故访问一次主存便可取一条指令或一个数据。随着计算机的应用范围的不断扩大,解题精度的不断提高,往往要求指令字长是可变的,数据字长也要求可变。为了适应指令和数据字长的可变性,其长度不由存储字长来确定,而由字节的个数来表示。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。