汇编语言期末复习要点.ppt_第1页
汇编语言期末复习要点.ppt_第2页
汇编语言期末复习要点.ppt_第3页
汇编语言期末复习要点.ppt_第4页
汇编语言期末复习要点.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

8086汇编语言程序设计,1,一、数和编码1.汇编语言的数;计算机认识的数和汇编语言认识的数;常用进制数及之间的转换(2/10);用“心”区分带符号数和无符号数;补码和溢出判断。2.二进制位串、计算机编码和手指ASC码、BCD码、汉字内码和UNICODE;数/码之间的转换。,汇编语言期末复习提要,8086汇编语言程序设计,2,8086汇编语言程序设计,3,带符号数的溢出判断:同符号数相加当符号发生变化时即为溢出,此时OF=1。如:(A)10110011+11111101(B)01110000+10111111(C)00110001+00000100(D)00101111+01101111,8086汇编语言程序设计,4,如果(AL)=80H,执行指令CMPAL,24H后,以下结果中正确的是?(A)OF=0,SF=0(B)OF=0,SF=1(C)OF=1,SF=0(D)OF=1,SF=1,8086汇编语言程序设计,5,又如(AL)=94H,执行ADDAL,0A2H后,以下结果正确的是?(A)(AL)=36H,OF=0(B)(AL)=36H,OF=1(C)(AL)=94H,OF=0(D)(AL)=94H,OF=1,8086汇编语言程序设计,6,无符号数的溢出判断:有进位导致CF=1即为溢出,如:(A)01010011+01001100(B)10110111+00100101(C)11110011+00001101(D)00110011+11001000,8086汇编语言程序设计,7,二、程序员眼中的计算机1.冯.诺伊曼计算机的内核模型:,8086汇编语言程序设计,8,2.汇编语言研究起点的思维模型:从char及字节型存储单元出发;数字电路的寄存器和CPU的寄存器和单纯用于数据暂存的寄存器不同,CPU的寄存器带有各种“附加”功能,这些“附加”功能是通过机器指令的执行来实现的。,8086汇编语言程序设计,9,3.8086/8088CPU的寄存器,8086/8088CPU的内部结构,8086汇编语言程序设计,10,可在存储器寻址中用作地址(偏移量)指针寄存器有:BX、SI、DI、BP而:moval,dxaddah,cx等都是错误的。,8086汇编语言程序设计,11,关于标志寄存器:不可能直接访问;16位寄存器,但只有9位有定义;其中:CF、OF、ZF、PF、SF、AF是真正意义上的“状态标志位”,而TF、IF、DF被用作控制;AF没有对应的条件跳转指令。,8086汇编语言程序设计,12,1.字节单元定位和物理地址,三、存储器寻址方式及堆栈,8086汇编语言程序设计,13,2.CPU地址信息的两个分量,8086汇编语言程序设计,14,3.访问内存的三种类型:指令读取:CS:IP控制器的眼睛,确定程序流向;堆栈操作:SS:SP以堆栈方式使用内存;数据段访问变量:DS:偏移量;4.寻址方式和常量、变量:立即数寻址方式与汇编语言的常量;直接寻址方式与汇编语言的变量;寄存器间接寻址方式及其扩展形式:访问变量的“准指针”。,8086汇编语言程序设计,15,5.寻址方式:寄存器寻址:xoral,al立即数寻址方式:moval,0movbx,0直接寻址方式:subal,100haddvar,al寄存器间接寻址方式:moval,sicall/jmpax相对寄存器寻址方式:基址寻址movax,bp+2变址寻址shlbyteptrdi+2,cl基址变址寻址:xchgax,bx+si相对基址变址寻址:pushvarbx+si,8086汇编语言程序设计,16,6.堆栈堆栈的“生成”和空栈的状态:SP的初值和堆栈容量、栈顶、栈底的关系;PUSH和POP的行为方式:栈指针SP的变化和数据入、出栈;PUSHF和POPF的默认操作数:标志寄存器;堆栈对子程序功能的支持:CALL和RET;堆栈对中断功能的支持:中断响应以非指令方式操作堆栈;IRET和RET的异同。,8086汇编语言程序设计,17,1.指令分类传送类算术运算类逻辑运算类移位及循环移位类流程控制指令标志位操作指令2.快捷查询汇编指令学习.chm8086instructions3.掌握用debug学习、研究指令的方法,四、基本指令集,8086汇编语言程序设计,18,假设(AL)=8,执行ADDAL,3后,再执行指令AAA,以下结果正确的是?(A)(AL)=0BH,CF=0(B)(AL)=0BH,CF=1(C)(AL)=01H,CF=0(D)(AL)=01H,CF=1,8086汇编语言程序设计,19,4.特别提示:目标操作数不能为立即数;除了串操作指令外,双操作数不能同为存储器操作数;段寄存器只能:movax,dsmovds,axpushdspopdsPF只反映运算结果低8位“1”的奇偶情况;JCXZ的跳转仅取决于CX值是否为零,和标志位无关。,8086汇编语言程序设计,20,MUL/IMUL/DIV/IDIV隐含使用AL/AX/DX:被乘数或被除数;乘积或商及余数。SCAS/LODS/STOS隐含使用AL和AX寄存器:AL配合字节串指令使用;AX配合字串指令使用。IN/OUT只能使用AL/AX与外设交换数据。,8086汇编语言程序设计,21,5.指令对标志位的特别影响除了POPF和SAHF,数据传送指令不影响标志位;INC、DEC不影响CF;AND/OR/XOR强制CF=OF=0,AF不确定;NOT、NOP不影响任何标志位;移位和循环移位指令仅影响CF和OF;MUL/IMUL影响CF和OF:CF=OF=1表明高位包含有效数据;DIV/IDEV不影响标志位;当发生有效调整时,AAA和AAS使CF=OF=1;AAD/AAM只影响ZF、SF和PF。,8086汇编语言程序设计,22,如果(AL)=0FFH,执行指令INCAL后,以下结果中正确的是?(A)CF=0有可能,不确定(B)OF=0(C)ZF=0(D)SF=1,8086汇编语言程序设计,23,6.无条件跳转指令的目标代码操作数和实现跳转的三种方式单/双字节差值(段内近/远距离直接跳转);偏移量(段内间接跳转);逻辑地址(段间直接/间接跳转)。,8086汇编语言程序设计,24,7.条件转移指令综述除AF外,每个标志位各对应两条单条件转移指令;任何数相等或不等:JE/JZ、JNE/JNZ;无符号数大于:JA/JNBE;涉及:CF、ZF无符号数大等于:JAE/JNB/JNC;涉及:CF无符号数小等于:JBE/JNA;涉及:CF、ZF无符号数小于:JB/JNAE/JC;涉及:CF带符号数大于:JG/JNLE;涉及:SF、OF、ZF带符号数大等于:JGE/JNL;涉及:SF、OF带符号数小等于:JLE/JNG;涉及:SF、OF、ZF带符号数小于:JL/JNGE;涉及:SF、OF,8086汇编语言程序设计,25,1.带子程序模板的源程序框架:容量固定的堆栈段;空数据段;代码段的特别框架元素:段声明语句;DS指向当前数据段;4CHDOS功能调用。用堆栈传递参数的子程序模板;循环结构模板;END伪指令。,五、程序框架、伪指令和功能调用,8086汇编语言程序设计,26,2.常量和变量定义语句:EQU、=:gainequ12168编译程序将符号常量定义语句的定义值作为立即数,取代源程序中所有其他位置的该符号常量;DB、DW、DD及DUP:编译程序根据各变量的排列顺序和所占用的字节数,计算出各变量的偏移量,以直接寻址方式或作为其他寻址方式中偏移量的位移量,取代源程序中所有其他位置的该变量符号。,8086汇编语言程序设计,27,3.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论