408计组第四章指令系统常见疑惑点(一轮) Q操作数不是在指令里吗 如果找到了指令不也能直接获得其操作数吗A操作数并一定不存放在指令里 指令里存放的的地址码不直接表示为操作数 存放的有可能是地址 数据 寄存器编号等各种信息Q既然指令寻址要找的是下一条要执行的指令 操作数寻址找的是要使用的操作数 那执行下一条指令是否既需要指令寻址又需要操作数寻址A有一些指令不需要操作数(空操作、停机、关中断等)所以不是每条指令都必须使用操作数寻址方式Q按字节编址的计算机如果在0x16处执行指令1 jmp0x18 pc是会自增到0x17再设置为0x18 那它访问了几个指令A访问两个指令 但是会经过三个地址 经过0x17后pc就被设置为0x18了 不访问该地址Q相对寻址的形式地址能否为负数 也就是往回寻址A:可以 并且负位移是以补码的形式存储 这样就可以用加法器统一计算了Q寄存器寻址省下来的地址码位数能做什么呢 指令字长不是固定的吗A寄存器寻址通常可以减少指令中用于指定操作数位置的位数 在固定字长指令中 这些位数是否能用于其他字段 取决于指令格式的设计