问答题(1998年北京航空航天大学)

指令INCB-(R5)是一自减型寻址方式字节操作数指令,其寻址过程是先R5←(R5)-1,然后计算EA=(R5),指令操作是加1操作。若指令执行前,16位寄存器R5的内容为(R5)=010046,内存以下字地址单元的内容(010044)=100000,(010046)=010000。指令执行后,寄存器和内存单元的内容有什么变化。(题中所有数据都是采用八进制数据。)

答案解析

(R5)=010045

字节地址单元(010045)原为(10000000)2;指令执行完后应变为(10000001)2

因此(010044)=100400

(010046)不变,仍为010000。

讨论

某计算机的指令系统定长为16位,采用扩展操作码,操作数地址4位。该指令系统已有三地址指令M条,二地址指令N条,没有零地址指令。问:最多还有多少条一地址指令?

设相对寻址的转移指令占两个字节,第一个字节是操作码,第二个字节是相对位移量(用补码表示)。每当CPU从存储器取出第一个字节时,即自动完成(PC)+1→PC。设当前PC的内容为2003H,要求转移到200AH地址,则该转移指令第字节的内容应为【 】。若PC的内容为2008H,要求转移到2001H,则该指令第二字节的内容应为【 】。

以下【 】寻址方式用来支持浮动程序设计。

在指令格式中,采用扩展操作码设计方案的目地是【 】。

某机字长16位,主存容量为64K,指令为单字长指令,有50种操作码,采用页面、间接和直接寻址方式。(1)指令格式如何安排?(2)存储器能划分为多少页面?每页多少单元?(3)能否再增加其它寻址方式?

试述运算器组成所需的部件及各部件的功能。

运算器虽由许多部件组成,但核心部件是【 】。

X、Y为定点二进制数,其格式为1位符号位,n位数值位。若采用布斯(Booth)补码一位乘法实现乘法运算,则最多需要【 】次加法运算。

运算器的基本功能是实现__________和__________运算。

补码一位乘法运算法则通过判断乘数最末位yn和补充位yn+1的值决定下一步操作,当ynyn+1=__________时,执行部分积加[-X]补,再右移一位,当ynyn+1=__________时,执行部分积加[X]补,再右移一位。

寻址的最终目的是__________。

寄存器间接寻址时,操作数在__________中。

根据操作数所在的位置,指出其寻址方式:操作数在寄存器中,称为____________寻址方式;操作数地址在寄存器中,称为____________寻址方式;操作数在指令中,称为____________寻址方式;操作数地址在指令中,称为____________寻址方式。操作数的地址,为某一个寄存器中的内容与位移之和,则可以是____________、____________、____________寻址方式。

已知某机字长16位,主存按字编址,其双操作数指令格式所示。其中OP为操作码,R为通用寄存器地址,试问下列寻址方式下能访问的最大主存区为多少机器字?(1)D为立即数:__________。(2)D为主存直接地址:__________。(3)D为主存间接地址:__________。(4)D为变址的形式地址,变址寄存器为R1(字长16位):__________。

设字长和指令长度均为24位,若指令系统可完成108种操作,且有直接、间接(一次间址)、变址、基址、相对、立即等6种寻址方式,则在保证最大范围内直接寻址的前提下,指令中操作码占__________位,寻址特征位占__________位,可直接寻址的范围是__________,一次间址的范围是__________。

某计算机的字长为16位,存储器按字编址,访内存指令格式如图所示。其中,OP是操作码,M是寻址方式,A为形式地址。设PC和Rx分别为程序计数器和变址寄存器,字长16位,问:(1)该格式能定义多少种指令?(2)各种寻址方式的寻址范围为多少字?(3)写出各种寻址方式的有效地址EA的计算式。寻址模式定义如下:M值 寻址方式0 立即寻址1 直接寻址2 间接寻址3 变址寻址4 相对寻址

间接寻址方式需要__________次访问存储器,获取数据。

设某计算机有变址寻址、间接寻址和相对寻址等寻址方式,设当前指令的地址码部分为001AH,正在执行的指令所在地址为1F05H,变址寄存器的内容为23A0H。请填充:当执行取数指令时,如为变址寻址方式,则取出的数为:__________;如为间接寻址,取出的数为__________;当执行转移指令时,转移地址为__________。已知存储器的部分地址及相应内容为:地址 内容001AH 23A0H1F05H 2400H1F1FH 2500H23A0H 2600H23BAH 1748H

某运算类型指令中有一个地址码为通用寄存器编号,对应通用寄存器中存放的是操作数或操作数地址,CPU 区分两者的依据是【 】。

在指令中用寄存器进行寻址的有____________、____________、____________、____________、____________和等方式。