一台假想的计算机有八个数据寄存器,标号是Rx(即R0~R7),16M字节的内存,并能按字节寻址,有32条指令(加,减等)。这台计算机中典型的指令格式如下:
SUB address,Rx
即 指令名 地址,数据寄存器号
1.一条指令最少要多少位?
指令占5位:2^5=32;
地址占24位:2^4=16,计算机中2^10=1K,2^20=1M,所以16M=2^(20+4);
寄存器占3位:2^3=8,也就是3位二进制数可以表示八个不同的寄存器。
因此一条指令所占用的最少位数=24+3+5=32
2.如果指令占用最小的位数(即32位)并且这台计算机用相同的字长来传输数据和指令(字长32位),那么它的数据总线的宽度(32位,因为计算机一次处理一个字)
3.程序计数器(PC)的宽度
因为内存中有16M的地址单元,因此需要24位的程序计数器来表示。
4.地址总线的位数
24位,原因见上。
5.控制总线的最小宽度
1位(控制读或写操作)
不知道这是不是让你满意的答案