首页 > 试题广场 >

回答下面问题

[问答题]

某计算机字长16位,主存地址空间大小为128KB,按字编址。采用 字长指令格式,指令 段定义如下

15          12   11                           6   5                             0

OP

Ms

Rs

Md

Rd


源操作数 目的操作数
转移指令采用相对寻址 方式 ,相对偏移 用补码表示,寻址 方式 定义如下

Ms/Md

寻址方式

助记符

含义

000B

寄存器直接

Rn

操作数一( Rn

001B

寄存器间接

Rn

操作数一(( Rn ))

010B

寄存器间接、自增

Rn +

操作数一(( Rn ))

Rn +1→Rn

011B

相对

D(Rn)

转移目标地址一

PC +(Rn)


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

(1)该指令系统最多可有 16 条指令;该机器最多有 8 个通用寄存器; 因为地址空间大小为 128KB,按字编址,故共有 64K 个存储单元,地址位数为 16 位,所以MAR 至少为 16 位; 因为字长为 16 位, 所以 MDR 至少为 16 位。
(2)转移目标地址范围为 0000H~FFFFH。

(3)对于汇编语句“ add(R4), (R5)+”,对应的机器码为 0010 001 100 010 101B,用十六进制表示为 2315H。
汇编语句“ add(R4), (R5)+” 指令执行后, R5 和存储单元 5678H 的内容会改变。执行后, R5 的内容从 5678H 变为 5679H;存储单元 5678H 中的内容从 1234H 变为68ACH。

发表于 2016-11-19 16:14:22 回复(0)