ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:17.97KB ,
资源ID:23225883      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23225883.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(汇编语言笔记.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

汇编语言笔记.docx

1、汇编语言笔记MOV说明: 指令中dest和src不能同时为存储器操作数,串操作指令除外;CS不能做为目标操作数使用;段寄存器之间不能互相传送;立即数不能送入段寄存器;不允许手工修改CS的值。MOV CS,AX;非法指令PUSH说明: PUSH指令的目标地址一定在当前堆栈中。 SS内容为段基址,偏移量由堆栈指针SP指出。操作数一定是16位的寄存器或存储器操作数。POP说明:目标操作数只能是16位的存储器或寄存器操作数(CS除外)。XCHG说明: dest和src不能同时为存储器操作数;即不能在存储器与存储器之间交换据数;段寄存器、立即数都不能用作操作数。XLAT说明: XLAT指令用于查表。表的

2、开始地址即表头地址由BX寄存器给出。AL中的原始值是要寻址的表中元素地址的位移量,规定表中第一个字节的位移量为0。LEA说明: LEA指令是将源操作数地址的偏移量,即有效地址传送到目标操作数中。源操作数必须是一个存储器操作数,目标操作数可以是任一16位通用寄存器、指针寄存器或变址寄存器。LDS说明: LDS是将src指出的连续两个字的内容,即一个32位的指针变量传送到一对16位的目标寄存器中。高位字内容为段基地址,LDS指令将其传送到数据段寄存器DS中,低位字内容为偏移量,传送到由dest指出的一个通用寄存器,指针寄存器或变址寄存器中,但不能是段寄存器。LES说明: LES是将src指出的连续

3、两个字的内容,即一个32位的指针变量传送到一对16位的目标寄存器中。高位字为段基地址,LES指令将其传送到附加段寄存器ES中,低位字为偏移量,传送到由dest指出的一个通用寄存器,指针寄存器或变址寄存器中,但不能是段寄存器。IN说明: acc为累加器AX或AL,取决于所访问端口的类型,若端口为16位长,则累加器为AX;若端口为8位长,则累加器为AL。 注意:port为所访问的端口地址,其寻址方式有两种:直接寻址和间接寻址。若其值在0255之间,则既可以使用直接寻址,也可以使用间接寻址;若其值大于255,则必须使用间接寻址。直接寻址:将端口地址直接在指令中给出;间接寻址:事先必须将端口地址存入D

4、X寄存器,指令中不可直接出现地址值。OUT(规定同IN)ADD说明: dest和src不能同时为存储器操作数和段寄存器。ADC说明:ADC指令主要用于多精度数据相加。INC说明:INC 指令不影响CF。SBB说明: SBB 指令主要用于多精度数据减法。DEC说明: DEC指令不影响CF。NEG说明: NEG 指令对于带符号的数来说是取负,即改变操作数的符号。CMP说明: CMP 将两个操作数相减,两个操作数保持原值不变,但与SUB指令一样影响标志。MUL说明: 源操作数src不能是立即数。 如果乘积的高半部不为零时,CF和OF被置位,否则将被清除。IMUL说明: src不能是立即数。 IMUL

5、指令视操作数为带符号的数。如果乘积的高半部不是符号位的扩展时,CF和OF被置位,否则将被清除。DIVsrc不能是立即数; 如果商数超过了允许的最大值(字节时为0FFH,字时为0FFFFH) 时就产生一个方式0 的中断,并且商和余数都不确定。IDIV说明: src不能是立即数; 如果商数超过了允许的最大值(字节时为-128127,字时为-3276832767) 时就产生一个方式0的中断,并且商和余数都不确定。余数始终与被除数同号,商向0靠拢。CBW说明: CBW 是将AL寄存器中数的符号位扩 展到整个AH寄存器中。CWD说明: CWD将寄存器AX的符号位扩展到整个 寄存器DX中。AND说明: A

6、ND指令可借助某个给定的操作数将另一个操作数中的某些位清除(这种操作也称设置屏蔽),使某些位保持不变,这个数通常称为掩码。XOR注意:与0异或的位不变,与1异或的位取反。TEST说明: TEST指令通过 “与” 的方式对两个源操作数进行比较,但不保留 “与” 的结果。移位操作指令说明: dest可以是任一通用寄存器,也可以是各种寻址方式给出的内存单元,cnt为移位次数。 移位操作是将给定的目标操作数移动cnt次。cnt可以为1,也可以是CL的内容。SHL/SAL,SHR,SAR 影响CF,OF,PF,SF,ZF; ROL, ROR,RCL,RCR 仅影响CF和OF位。 CF的值总是最后一次被移

7、入的值。在移动 1位的移位中,如果目标操作数的最高位(符号位)改变了,那么OF就被置1,否则,OF就被清0。串操作指令说明:(1)指令中要处理的两个数据串应分别在数据段(src)和附加段(dest)中定义。(2)数据段中定义的数据串要用SI作指针;附加段中定义的数据串要用DI作指针。(3)数据串操作指令每执行一次,指针SI和DI会自动修改。增量修改还是减量修改取决于方向标志位DF的状态。若DF=0,则指针增量修改,即 SI=SI+DELTA DI=DI+DELTA若DF=1,则指针减量修改,即 SI=SI-DELTA DI=DI-DELTA(4)修改指针时的增减量值DELTA为多少,取决于所处

8、理的串的类型。若串为字节类型,则DELTA=1;否则若为字类型,则DELTA=2。重复前缀说明:重复前缀可以加在数据串基本操作指令前,此时,数据串基本操作指令将重复执行,每执行一次,则将CX的内容减1,直到CX等于零为止。其控制结构属于先判断后执行的循环结构,即先判断CX的初值是否为0,若CX的初值为0,则数据串基本操作指令一次也不执行。JMP targ说明:指令中的targ可以是直接标号、寄存器间接或存储器间接寻址形式。INT 中断指令说明:n称为中断类型号,必须是0255之间的立即数。INTO 溢出中断指令说明:INTO指令一般用在算术运算指令后面,在有溢出的情况下,启动一个溢出中断服务程

9、序。IRET 中断返回指令说明:IRET指令是任何中断服务程序的最后一条要执行的指令,它使CPU从中断服务程序返回被中断程序的断点处继续执行。HLT 停机指令说明:CPU执行HLT指令后,就停止执行后续指令,只有当产生中断请求信号(发生中断)或有复位信号(RESET线变成低电平)时,才能退出暂停状态。中断信号产生后,CPU停止执行HLT指令,而去执行中断服务程序,执行IRET后,CPU返回被中断程序的断点处,执行HLT的后续指令。WAIT 等待指令说明:CPU执行WAIT后,只有当TEST信号变成低电平时,才能执行的后续指令。除此之外,任何情况也不能使CPU停止执行WAIT指令(退出等待状态)

10、。ESC 交权指令说明:ESC指令称为换码指令,它使协处理器能够从8086/8088的指令流中获得一个操作码和一个操作数。指令中exp_op为操作码,是一个6位二进制的数据。LOCK 锁定指令说明:LOCK指令是一个封锁前缀,它可以加在任何指令的前面,使CPU在执行该指令期间保持一个总线锁定信号。在多处理机系统中用其实现对共享资源的存取控制。 NOP 空操作指令说明:空操作指令NOP使CPU不进行任何操作,但要花费3个时钟周期,然后执行其后续指令,一般用于编制软件延时程序或用纠错程序调试程序时抹掉多余的指令。注:EQU与=用法的区别在于:用EQU赋值后的符号其值不能再被改变;用=赋值后的符号其

11、值可以再次被重新赋值代码定位伪指令 ORG说明:EXP是一个表达式,其值为16位的无符号二进制数,代表其所在逻辑段内某单元的偏移地址。该条伪指令的作用是告诉汇编程序,在其后的数据或程序代码将从EXP指定的单元开始连续存储。汇编语言的源程序格式汇编语言源程序由语句序列构成。源程序可以包含若干个代码段、数据段附加段或堆栈段。段与段之间的顺序任意。独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点。所有可执行性语句必须位于某一个代码段内,说明语句性语句可根据需要位于任一段内。通常需要一个堆栈段。汇编语句最多由四个域组成: 标号: 操作符 操作数 ;注释标号 标号不能重复定义:一个标号在标号字段只能出现一次。未定义标号不能引用。 保留字不能用作自定义标号使用。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1