某机器字长指令为16位,主存按字节编址,取指令时,每取一个字节pc自动加1,当前指令地址为2000H,指令内容为相对寻址的无条件转移指令,指令的形式地址为40H,则取指令后和执行指令后的PC的内容是多少?请给我详细过程
时间: 2024-05-19 12:15:01 浏览: 97
根据相对寻址的无条件转移指令的形式地址为40H,可知跳转地址为当前指令地址加上40H,即2040H。
由于每取一个字节pc自动加1,取指令后pc指向2001H,然而根据指令长度为两个字节,因此需要再取一个字节,pc指向2002H,接下来再取一个字节,pc指向2003H。
根据主存按字节编址,可知2000H地址存储指令的第一个字节,2001H地址存储指令的第二个字节,2002H和2003H地址存储无关数据。
因此,取指令后pc指向2003H,执行指令后的pc指向2040H。
相关问题
某机器字长指令为16位,主存按字节编址,取指令时,每取一个字节pc自动加1当前指令的地址为2000H,指令内容为相对寻址的无条件转移指令,指令的形式地址为40H,则取指令后和执行指令后的PC的内容是2002H,2042H
回答:根据相对寻址的无条件转移指令的指令形式地址为40H,我们可以得到跳转的相对偏移量为40H,即64个字节。根据题意,在取指令时,每取一个字节PC自动加1,因此取完指令后PC的值为2000H+1H+1H=2002H。执行指令时,PC会根据指令中的偏移量跳转至2040H,加上2个字节的指令长度后,PC的值为2042H。所以取指令后和执行指令后PC的内容分别为2002H和2042H。
某机字长为32位,存储容量为64KB,按字节编址其寻址范围是多少?若主存以字节编址,试画出主存地址和字节地址的分配情况
该机的存储容量为64KB,即$2^{16}$字节。由于每个字长为32位,即4字节,因此寻址范围为$2^{14}$个字。
若主存以字节编址,则总地址线数为16位,可寻址范围为$2^{16}$个字节。
以下是主存地址和字节地址的分配情况:
| 主存地址 | 字节地址 |
| -------- | -------- |
| 0000H | 00000H |
| 0001H | 00001H |
| ... | ... |
| FFFE | FFFE0H |
| FFFF | FFFFFH |
阅读全文