第二章 寄存器
第二章 寄存器
一,cpu概述
1, 一个cpu由运算器,控制器,寄存器组成
2, 内部总线实现cpu内部各个器件的联系
3, 外部总线实现cpu和主板上其他器件的联系
4,
二,通用寄存器
1,8086cpu中,寄存器Ax,Bx,Cx,Dx通常存放一般性数据,称通用寄存器,每个寄存器均为16位 例如:
2,寄存器拆分,Ax分为AH,AL,Bx分为BH,BL,Cx分为CH,CL,Dx分为DH,DL;
例如:
三,字在寄存器中的存放
1, 一个字由两个字节组成,可存于一个16位寄存器中,字的高八位存于通用寄存器的高八位寄存器,字的低八位可存于通用寄存器的低八位寄存器
例如:
2,16进制的数从头至尾为,0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F;字母分别代表10,11,12,13,14,15;
四,汇编指令
1, mov,add;
2,
3, 注意:汇编数目运算应该量级相同,
五,8086给出物理地址的方法
1, cpu访问内存单元时要给出内存单元的地址
2, 所有内存单元构成的存储空间是一个一维线性空间,每一个内存单元在这个空间中都有唯一的地址,称物理地址
3,
4, 8086内部的寄存器都是16位的,而外部地址总宽为20位,16位的寄存器无法直接表示20位的物理地址,16位存放的地址数据范围0~2^16-1(64kb),29位对应的地址单元0~2^20-1(1mb);解决实例

5, 8086在内部用2个16位地址通过计算合成得到20位的物理计算地址,由cpu内部的地址加法器实现:基础地址(段地址)*16+偏移地址=物理地址,段的起始物理地址是16的倍数
六,cs Ip
1, cs:代码段段寄存器,存放代码段的段地址,Ip:指令指针寄存器,存放cpu将要读取的指令在代码段中的偏移地址,cs:ip对应的物理地址存放的是cpu将要读取的指令,(cs)*16+Ip=指令的物理地址
2, 计算机工作过程:
Cpu基于cs:ip,计算物理地址,然后到相应内存单元读取指令,送到指令缓冲区,然后cpu自动修改ip的值,ip=ip+所读取的指令长度,为下一步指令读取做准备,最后执行指令,随即转第一步,重复
3, 修改cs ip的指令jmp
同时修改cs,ip的内容jmp 段地址:偏移地址

只修改ip的内容,jmp 某一合法寄存器

posted on 2018-10-20 16:41 free_rocket_man 阅读(265) 评论(0) 收藏 举报
浙公网安备 33010602011771号