汇编语言笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MOV 说明: 指令中dest和src不能同时为存储器操作数,串操作指令除外;CS不能做为目标操作数使用;段寄存器之间不能互相传送;立即数不能送入段寄存器;不允许手工修改CS的值。MOV CS,AX;非法指令 PUSH 说明: PUSH指令的目标地址一定在当前堆栈中。 SS内容为段基址,偏移量由堆栈指针SP指出。操作数一定是16位的寄存器或存储器操作数。 POP 说明:目标操作数只能是16位的存储器或寄存器操作数(CS除外)。 XCHG 说明: dest和src不能同时为存储器操作数;即不能在存储器与存储器之间交换据数;段寄存器、立即数都不能用作操作数。 XLAT 说明: XLAT指令用于查表。表的开始地址即表头地址由BX寄存器给出。AL中的原始值 是要寻址的表中元素地址的位移量,规定表中第一个字节的位移量为0。 LEA 说明: LEA指令是将源操作数地址的偏移量,即有效地址传送到目标操作数中。源操作数必须是一个存储器操作数,目标操作数可以是任一16位通用寄存器、指针寄存器或变址寄存器。 LDS 说明: LDS是将src指出的连续两个字的内容,即一个32位的指针变量传送到一对16位的目标寄存器中。高位字内容为段基地址,LDS指令将其传送到数据段寄存器DS中,低位字内容为偏移量,传送到由dest指出的一个通用寄存器,指针寄存器或变址寄存器中,但不能是段寄存器。 LES 说明: LES是将src指出的连续两个字的内容,即一个32位的指针变量传送到一对16位的目标寄存器中。高位字为段基地址,LES指令将其传送到附加段寄存器ES中,低位字为偏移量,传送到由dest指出的一个通用寄存器,指针寄存器或变址寄存器中,但不能是段寄存器。 IN 说明: acc为累加器AX或AL,取决于所访问端口的类型,若端口为16位长,则累加器为AX;若端口为8位长,则累加器为AL。 注意:port为所访问的端口地址,其寻址方式有两种:直接寻址和间接寻址。若其值在0~255之间,则既可以使用直接寻址,也可以使用间接寻址;若其值大于255,则必须使用间接寻址。 直接寻址:将端口地址直接在指令中给出; 间接寻址:事先必须将端口地址存入DX寄存器,指令中不可直接出现地址值。 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指令视操作数为带符号的数。如果乘积的高半部不是符号位的扩展时,CF和OF被置位,否则将被清除。 DIV ①src不能是立即数; ②如果商数超过了允许的最大值(字节时为0FFH,字时为0FFFFH) 时就产生一个方式0 的中断,并且商和余数都不确定。 IDIV 说明: ① src不能是立即数; ② 如果商数超过了允许的最大值(字节时为-128~127,字时为-32768~32767) 时就产生一个方式0的中断,并且商和余数都不确定。 ③余数始终与被除数同号,商向0靠拢。 CBW 说明: CBW 是将AL寄存器中数的符号位扩 展到整个AH寄存器中。 CWD 说明: CWD将寄存器AX的符号位扩展到整个 寄存器DX中。 AND 说明: AND指令可借助某个给定的操作数将另一个操作数中的某些位清除(这种操作也称设置屏蔽),使某些位保持不变,这个数通常称为掩码。 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的值总是最后一次被移入的值。⑤在移动 1位的移位中,如果目标操作数的最高位(符号位)改变了,那么OF就被置1,否则,OF就被清0。 串操作指令 说明: (1)指令中要处理的两个数据串应分别在数据

文档评论(0)

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

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

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档