汇编笔记.DOCVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编笔记

汇编笔记 1.通用寄存器:AX,BX,CX,DX。由于8086上一代寄存器是8位的,所以为了向上兼容,AX又分为AH和AL,分别为底8位和高8位。 2 进行mov操作时,源操作数要与目的操作数的位数一致。比如mov ax,al是错误的,因为把8位赋值给了16位寄存器。 3 8086的cpu内部地址是16位,物理地址是20位。寻址公式为 物理地址=段地址*16+偏移地址。也可以说“段地址左移了4位”。这种寻址方式的本质就是:基地址+偏移地址。 4 段的概念。内存并没有被划分为段,而是CPU使用划分段的方式来管理物理内存。因此,可以根据编程的需要将连续的内存划分为段。但是一个段是有限制的,段只能是16的整数倍,而且段最大为64KB。 (1) 观察下面地址 物理地址 段地址 偏移地址 21F60H 2000H 1F60H 2100H F60H 结论就是:CPU可以使用不同的段地址和偏移地址找到同一个物理地址,只要满足寻址公式就可以了。 (2) 数据存储在内存单元21F60H中,这句话的准确含义是什么? 由于存储单元用两个元素来进行描述,所以对PC机而言有两种表达方法 (a)数据存储在2000:1F60(2100:F60)中 (b)数据存储在内存2000段中的1F60单元中 5 存储段地址的寄存器称为段寄存器,8086中分别是CS,DS,ES,SS。 6 最重要的寄存器,CS和IP。在8086中,假设任意时刻,CS的内容为M,IP的内容为N,那么下一条指令的存储地址为M*16+N。这表示CPU将从该地址读取指令并执行。当从内存中读出一条指令之后,IP的内容会根据指令的大小自动增加,到底增加多少字节可以查Intel的白皮书。由于指令和数据都是二进制数据,那么CPU在工作的时候怎样区分指令和数据呢?结论就是,CS:IP指向的内存就是指令,凡是被CS:IP执行过的二进制都是指令。 7 如何修改CS和IP中的数值呢?mov cs,2000 mov ip,1F60可以吗?注意,不能使用mov指令来修改CS和IP中的数值。修改CS和IP中的数值只能使用跳转指令。 (1)如果想要同时修改CS和IP中的数值,可以使用jmp 段地址:偏移地址。执行后,CS=段地址,IP=偏移地址。 (2)如果仅仅修改IP中的数值,可以使用jmp 某一个合法寄存器的地址。注意,只能是寄存器地址,不能是内存地址。 汇编语言笔记(二) 1.CPU的组成: 运算器:进行信息的处理 寄存器:进行信息的存储 控制器:控制各种器件进行工作 内部总线(CPU内部的总线):连接各种器件,在他们之间进行数据的传送 2.寄存器是CPU的主要部件,寄存器是CPU中程序员可以用指令读写的部件,程序员通过改变各种寄存器中的内容来实现对CPU 的控制。 3.寄存器的分类:(8086CPU) AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW 我们主要关心的寄存器是: ①通用寄存器,用来存放一般性的数据,他们是:AX、BX、CX、DX AX、BX、CX、DX都可以分为高8位和低8位,他们是: AX可分为:AH和AL; BX可分为:BH和BL; CX可分为:CH和CL; DX可分为:DX和DL; ②段寄存器,用来存放段地址,他们是:CS、SS、DS、ES。我们主要关注CS,他为代码段寄存器,存放的是CPU当前要读取指令的段地址。 ③指令指针寄存器,用来存放偏移地址,他是IP。 4物理地址: CPU访问内存单元时,要给出内存单元的地址。所有的内存单元构成的存储空间是一个一维的线性空间,每个内存单元在这个空间中都有唯一的地址,我们将这个唯一的地址成为物理地址。 5.什么叫16位结构的CPU 运算器一次最多可以处理16位的数据; 寄存器的最大宽度为16位;寄存器和运算器之间的通路是16位。 6.物理地址=段地址*16+偏移地址。 7.CPU从何处执行指令是由CS、IP中的内容决定的,程序可以通过改变CS、IP中的内容来控制CPU执行目标指令。 8.修改CS、IP的内容,可以用: 同时修改CS、IP:jmp 段地址:偏移地址 修改IP:jmp:某一合法寄存器 指令的书写格式 指令——CPU执行某种操作的“命令”,指令的集合称为指令系统。 书写格式: 机器指令——硬件可识别、可存储

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档