组成原理
2010-43
某计算机字长为16位,主存地址空间大小为128KB,按字编址。采用单字长指令格式,指令各字段定义如下图所示。

转移指令采用相对寻址方式,相对偏移量用补码表示,寻址方式定义见下表。

请回答下列问题:
1)该指令系统最多可有多少条指令?该计算机最多有多少个通用寄存器?存储器地址寄存器(MAR)和存储器数据寄存器(MDR)至少各需要多少位?
2)转移指令的目标地址范围是多少?
3)若操作码 0010B 表示加法操作(助记符为 add),寄存器 R4 和 R5 的编号分别为 100B 和 101B,R4 的内容为 1234H,R5 的内容为 5678H,地址 1234H 中的内容为 5678H,地址 5678H 中的内容为 1234H,则汇编语言为 “add(R4),(R5)+”(逗号前为源操作数,逗号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元中的内容会改变?改变后的内容是什么?
答案
(1)指令系统最多有16条指令,最多有8个通用寄存器,MAR至少需要16位,MDR至少需要16位。
(2)转移指令的目标地址范围是0000H-FFFFH(0~65535)。
(3)机器码为2315H。指令执行后,寄存器R5的内容变为5679H,存储单元5678H中的内容变为68ACH。