机器字长是CPU
的位数,也是寄存器的宽度、数据总线的宽度,即CPU
一次性最多能访问的数据的宽度。是硬件上的概念。
计算机系统中指令集是对CPU的抽象。
指令集字长体现了CPU
开放能力的多少(对CPU
能力利用的多少)。比如有一个64
位的CPU
,其寄存器宽度是64
,但指令集字长为32
,那么在程序运行(执行CPU指令)时,寄存器的高32位不参与运算或总是被置位0
。指令集字长是软件上的概念。
操作系统的位数等于指令集字长,决定了虚拟内存的大小和指针的长度。
因此,机器字长
>=
指令集字长==
操作系统位数