CPU内部工作(内部通信)
外部有总线和网卡什么的相连!
内部也有线!
寄存器(CPU)
通用寄存器
X86 16位寄存器
怎么兼容8位寄存器
AH high高填0
AL low 低填正常的8位
字
1个字是两个字节!
一个字节是8位!
进制转换
calc
111 –》 是0到7
所以二进制转8进制 每次看3位就可以了!
1111 –》 是0到15 所以每次看4位就可以了!
1111 转换8进制 先看成3的倍数! 001 111 就是 17
1111 转成16进制 先写出4的倍数 0000 1111 0F–》F
汇编指令
最后AX是1044C 寄存器最多存16位!
最后AX里是044CH!
AL是8位的!所以 最后应该是0058H
AH和AL 不能相加!
丢弃的位去哪了!
物理地址(存储单元的地址)
个人理解:
这里16位是16位字节
怎么加的呢?
段地址左移1位 2进制的话!左移4位!
CPU规定了组合的方式!
段
2^16=64k这个是没有问题的,16跟地du址线能够表zhi示64K种状态,这个每一种dao状态表示内存里的的一zhuan块区域,这里shu的这块区域应该指的的字节(B),我们要知道应该是某个字节所在的位置,而不是位(b)。所以64K指的是字节,即64KB。
大概啥意思呢?
就是寻址能力的16位!
寻址是寻的 字节(B)!不是位数(b)!
2 16次方 = 64 KB
CPU只看物理地址!它不管段地址和偏移地址!
段寄存器
8086外部提供20位的!
内部通过段地址和偏移地址 来提供20位!
就感觉CS和IP是段地址和偏移地址!