当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 算术运算指令,逻辑运算指令,移位指令 AA.算术运算指令 A.加减法运算ADD,ADC,INC,SUB,SBB,DEC,CMP,NEG a.ADD,和8086功能,用法相同,不过支持32位操作,下面的语句都是合法的。
 

 

 ·80386asm程序设计基础(二)    »显示摘要«
    摘要: 80386处理器的寻址方式 在实式模式下,80386处理器的最大寻址空间仍然为1m,和8086/8088相似。即段地址*10h+段内偏移地址,从而形成20位地址。此种模式下,段基址是16的倍数,长度最大不超过64k。 在保护模式下,80386处理器可以使用所有的物理内存。段基址可以是32位,也可以不是16的倍数,同时它的最大长度为4g,这与8086完全不同,在形成逻辑地址时用段基址直接加上段内偏......
 ·用汇编访问com对象    »显示摘要«
    摘要: 用汇编访问com对象 ernest murphy ernie@surfree.com revised dec 26 2000 for inclusion as part of masm32 revised july 10 2000 for the new form of coinvoke. sample code for this article ......


80386ASM程序设计基础(四)

   算术运算指令,逻辑运算指令,移位指令

   a.加减法运算add,adc,inc,sub,sbb,dec,cmp,neg 【程序编程相关:http://www.myfaq.com

   aa.算术运算指令 【推荐阅读:修改abap help的字段text

   add  esi,edi 【扩展信息:循环链表实验

   a.add,与8086功能,用法相同,不过支持32位操作,下面的语句都是合法的.

   add  eax,dword  ptr  [1000h]

   b.adc,带进位的加法指令,即oprds+oprdd+cf,其中oprds代表源操作数,oprdd代表目的操作,cf代表进位标志位,功能与用法与8086相同,支持32位操作.

   c.sub,与8086相同,支持32位操作.

   d.sbb,带进位的减法指令,即oprdd-oprds-cf,其中oprds代表源操作数,oprdd代表目的操作数,cf代表进位标志位,功能与用法与8086相同,支持32位操作.

   e.dec,减1操作,功能与用法与8086相同,支持32位操作.

   f.cmp,比较操作,功能与用法与8086相同,支持32位操作.

   g.neg,求补操作,功能与用法与8086相同,支持32位操作.

   h.inc  加1操作,功能与用法与8086相同,支持32位操作.

  

   b.乘除法指令mul,div,imul,idiv

   a.mul,无符号数乘法指令,与8086功能用法一样,即指令中只给出一个操作,被乘数已默认,如果指令给出的操作数是32位的话,被乘数默认为eax,那么乘积将存放在edx:eax中,其中edx存放高32位,eax存放低32位,如果此时edx=0,即高32位为0的话,那么of=0,cf=0,否则被置1.如果指令给出的操数作是16位的话,被乘数默认为ax那么乘积将放在dx:ax中,其中dx中将存放高16位,ax中存放低16位.如果指令给出的操作数是8位的话,被乘数默认为al,那么乘积将放在ax,ah中存放高8位,al中存放低8位.

  b.div,无符号数的除法指令,与8086一样,指令给出一个操作数,被除数已默认.如果指令中给出的操作数为32,那么被除数将是edx:eax, 最终的商将存放在eax, 余数将存放在edx中.如果指令给出操作数为16位,那么被除数为eax,最终得到的商放在ax,余数放在eax的高16位.如果指令中给出的操作数为8位,那么被除数是16位,最终得到的商将放在al中,余数放在ah中.

  c.imul,有符号数的乘法指令,除了具有8086的用法外,有新的形式:

    c1.imul dst,src;将源操作数src与目的操作dst相乘,并将结果送往dst.

    c2.imul dst,src1,src2;将源操作数src1与源操作数src2相乘,并将结果送往dst.
...   下一页
 ·保护模式知识(三)    »显示摘要«
    摘要:描述符 前面已经提到,描述符是描述一个段的大小,地址及各种状态的8个字节的结构,在编程时它可以定义它. 如图2所示,根据描述符所描述对象的不同,描述符可分为存储段描述符、系统段描述符、门描述符三种,而门描述符又可分为调用门、任务门、中断门和陷阱门四类。下面将分别介绍各描述符作用及其各位的意义: 一、存储段描述符 存储段描述符是描述程序中的代码段和数据段的,这其中也包括堆栈段,在保护模式下,应该把堆......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE