1.指令字长:操作码的位数
机器字长:主存单元的位数
存储字长:存储单元的位数
2.看到了,写一下
3.指令寻址是干啥呢?
下一条想要执行指令的地址是啥你说出来!
之前我们说PC+1,但现在指令长度不定+可能按照字节存储一个指令占两个字节……很多问题
这么搞:定长的话,按字节编址,那就每次PC+2;不定长:那就每次执行时候,操作码部分可以看到这个占n字节,PC+n就好。
4.指令寻址它有两种,一种是字寻址,一种是按字节寻址
怎样能够边界对齐?起始地址是字长的整数倍
5.说什么指令寻址:不过是找吓一跳
那么两种:顺序寻址+跳跃寻址,顺序寻址→PC+1;跳跃寻址→指令JMP
6.基址寻址:就是基础的加上一个BR,BR内容是程序起始地址
变址寻址:查找方式和基址寻址很类似,就是BR→IX;
那他们有什么区别呢?变址寻址很适合循环程序,基址寻址是A不断发生变化,变址是IX不断发生变化,程序员可以对IX进行修改,不像基址一样面向操作系统。循环可以一直改变IX的值
相对寻址呢?PC的内容加上A得到有效地址,A可正可负,补码表示
PC是当前指令的下一条指令的地址,因为取出一条指令,PC会自动加到下一条指令
相对寻址其实是对PC进行操作,比如xxxx,-4,就代表PC现在要减掉4,pc回到了循环初的位置。广泛应用于转移指令
7.16进制的计算,不太会
8.指令思维导图