问答题 某台字长和地址都为16位的计算机,有16个通用寄存器(通常以0000B表示R0的编号),程序计数器为PC,内仔以字编址。在地址为2000H的内存中,有1条将16位立即数0036H送寄存器R0f10指令,其机器码为8801 036H。
问答题 指令操作码在最高8位,请指出该指令为几地址指令,并写出具体的地址编码。
【正确答案】
【答案解析】根据题意,该指令为二地址指令,除去操作码88H和立即数0036H,剩下为01H,即0000 0001B,所以表示目的地址R0的地址编码为高4位0000B,表示立即数0036H的地址编码为2001H(即由PC+1自动形成)。
问答题 如果在原来内存地址中,该指令功能改为将R1的数据传到R2,操作码为03H,令的机器码。
【正确答案】
【答案解析】因为R1的编号为0001B,通用R2的编号为0010B,又依据前面的指令可以得到,8位地址码中,高4位为目的寄存器编号,所以剩下的低4位可以用于表示源寄存器编号,所以该指令的机器码为0321H。