- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章汇的编语言与汇编程序
汇编语言的特点 汇编语言与计算机硬件有直接关系。 (1)汇编指令中要用到CPU的寄存器 (2)汇编指令可以直接对内存进行读写操作 汇编指令条数多。难! 每条汇编指令只能进行一种运算,并且运算最多只有两个操作数 。麻烦! 学习汇编语言应注意的问题 熟练掌握CPU中寄存器的设置情况. 搞清存储器结构及地址变换. 正确定义各种符号,熟练使用地址表达式 熟练掌握符号指令的寻址方式 要掌握好汇编程序的结构形式. 注意标志寄存器值的变化情况 掌握符号指令 熟练掌握系统功能调用 调试程序和使用方法 汇编语言语句类别 在汇编语言中所使用的语句,可分为指令语句、伪指令语句和宏指令语句这三种基本的语句。 指令语句是计算机可执行的语句,它与机器指令相对应,因此指令语句在汇编后,一定生成与之对应的机器指令代码。 伪指令语句是为了方便程序设计,提供给汇编程序的,是不可执行的语句。它在程序中也以一条语句行的形式出现,只是在汇编过程中,指示汇编程序作出相应的处理,它本身不产生对应的机器指令代码。例如定义数据值和类型,分配数据区,进行程序分段等。 5. 地址传送指令 取有效地址指令 LEA 格式为: LEA REG,SRC 执行操作:(REG)←SRC 取有效地址指令LEA的功能是将存储器地址送到一个寄存器。LEA指令格式中,要求源操作数必须为内存单元地址,目的操作数必须为一个16位的通用寄存器。 例如:LEA AX,[2728];将2728单元的偏移量送AX,指令执行后,AX中为2728 LEA BX,[BP+SI];指令执行后,BX中的内容为 BP+SI的值 LEA SP,[0482];使堆栈指针SP为482 6.查表转换指令 XLAT或XLATB 指令格式: XLAT[source-table]或 XLATB[source-table] 该指令的操作数都是隐含的,执行的操作是: [BX+AL] →AL 或 [EBX+AL] →AL 例如,将十进制数字(0~9)翻译成7段显示码的译码表,如表5-2所示 执行HLAT指令通过查表5-2可将任意一个十进制数翻译成7段显示码,操作步骤为: 将译码表定位到某个逻辑段的一片连续地址中,并将其表首址的偏移地址放入BX寄存器中。 将待翻译的十进制数字送入AL寄存器中。 执行XLAT指令。 例如:假设这段数据存放在偏移地址为2000H开始的内存中,取出3所对应的7段码,程序如下: MOV BX,2000H MOV AL,3 XLAT 4.测试指令TEST 格式:TEST dest,source TEST指令和AND指令执行同样的操作,但TEST指令不送回操作结果,而仅仅影响标志位。例如: TEST AX,8000H;如AX的最高位为1,则 ;ZF=0,否则ZF=1 TEST AL,01 ;如AL的最低位为1,则 ; ZF=0,否则 ZF=1 2.移位指令 (1)非循环移位指令: SAL/SHL/SAR/SHR 目的,记数值(n) SAL——算术左移 SHL——逻辑左移 SAR——算术右移 SHR——逻辑右移 逻辑移位指令在执行时,实际上是把操作数看成无符号数来进行移位,所以右移时,最高位添0;算术移位指令在执行时,则将操作数看成有符号数来进行移位,所以,右移时保持最高位的值不变,这里的最高位就是符号位。 这4个移位指令在执行时,都会影响标志位CF,OF,PF,SF和ZF,对AF无作用 SAL DX,1;将DX中的值左移1位,最低位补0 SAL AX,CL;将AX中的值左移若干位,在CL中指出所移的位数,比如CL中为4,则AX的值左移4位 SAL AL,CL;AL中值左移若干位,在CL中指出所移的位数。 注意:如果只移1位,那么,指令中直接用1指出移动位数;如果左移或右移若干位,那么必须用CL寄存器预先指定所移的位数(8086/8088) (2)循环移位指令: ROL/ROR/RCL/RCR 目的,记数值 ROL——不带进位位的循环左移 ROR——不带进位位的循环右移 RCL——带进位位的循环左移 RCR——带进位位的循环右移 影响标志位CF和OF,不影响PF,SF和ZF,对AF无作用 ROL BX,1;BX中的内容不带进位位循环左移1位 ROL WORD PTR [D
文档评论(0)