寄存器CS和IP

讲述这两个寄存器前我们先来引入8086CPU是如何给出物理地址来访问内存的。

一、物理地址的形成

8086CPU有20位地址总线,可以传送20位地址,寻址能力为1MB,但是它是16位结构,只能送出16位地址,寻址能力为64kb。故8086CPU的物理地址用两个16位地址来合成一个20位的物理地址:物理地址=段地址*16(十六进制形式左移一位)+偏移地址
注:一个X进制左移一位相当于乘以X。
在这里插入图片描述

二、寄存器CS和IP

CS为代码段寄存器,储存内存单元的段地址,IP为指令指针寄存器,储存内存单元的偏移地址,这两寄存器通常与指令相关。任意时刻,CPU将CS:IP指向的内容当指令来执行。

三、8086CPU工作过程

(1)CS:IP指向内存中第一条指令,读取指令进入指令缓冲器。
(2)IP指向下一条指令。
(3)执行指令。
(4)转至步骤一继续重复这个过程
在这里插入图片描述

四、修改CS、IP内容

采用“jmp 段地址:偏移地址”的指令来修改两个寄存器内容。
若想只修改IP的内容,则采用“jmp 某一合法寄存器”的指令来完成,比如jmp ax,把IP寄存器内容改为ax寄存器里内容,好似mov IP,ax(此指令只用来类比但并不能改变IP的值)。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值