- 1、本文档共119页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计原及汇编 指令系统
第四章 指令系统 指令:规定计算机执行某种操作的指示和命令。 指令系统:一台计算机的所有指令的集合。 (一)指令字长度 指令字长度即一条指令中包含的二进制代码的位数。 格式 2、操作数寻址方式 (一)隐含寻址 某个操作数(或操作数地址)隐含在某个通用寄存器(或指定的存储单元)中。 例:MUL OPR 四、 8086寻址方式示例 2、8086/8088CPU中的寄存器 ( 2 ) 通用R(8个16位R): 2 数据R 3、8086/8088的主存 逻辑地址的来源 例:用不同寻址方式编写显示字符串String的程序 DATA SEGMENT string db Hello world!,0DH,0Ah,$ count DW 14 DATA ENDS .直接寻址 mov dl,string mov ah,2 int 21h ;显示字符H mov dl,string+1 mov ah,2 int 21h ;显示字符‘e ..... 例:用不同寻址方式编写显示字符串String的程序 寄存器间接寻址 mov cx,count mov bx,offset string ;string的偏移地址 next: mov dl,[bx] mov ah,2 int 21h ;显示一个字符 inc bx loop next ;循环指令 例:用不同寻址方式编写显示字符串String的程序 变址寻址 mov cx,count mov si,0 next:mov dl,string[si] mov ah,2 int 21h inc si loop next 例:用不同寻址方式编写显示字符串String的程序 基址变址寻址 mov cx,count mov bx,offset string ;string的偏移地址 mov si,0 next: mov dl,[bx][si] mov ah,2 int 21h ;显示一个字符 inc si loop next ;循环指令 例:用不同寻址方式编写显示字符串String的程序 DOS显示字符串功能 mov dx,offset string mov ah,9 int 21h ;显示一串字符 例:JMP CX JMP WORD PTR [BX] 或 JMP [BX] (一)数据传送指令: 将数据从一个地方传送到另一个地方。 (二)算术运算指令 (三)逻辑运算指令 (四)程序控制指令 指令数据传送方向 4、控制转移类指令 条件转移指令及其判断条件 (三)CX寄存器的值测试转移指令 (2)LOOPE/LOOPZ指令 格式: LOOPE/LOOPZ 目标地址 功能:循环次数(CX)-1 ? CX;若(CX)不为 零,且ZF=1,转到目标处,继续执行, 否 则((CX)=0或ZF=0),顺序执行。 (五)子程序的调用与返回指令 (2)RET从子程序返回指令 (六)中断子程序的调用与返回指令 七、CISC与RISC指令系统 2. RISC (Reduced Instruction Set Computer)精简指令系统计算机 (四)除法指令 (1)无符号数除法指令 指令格式: DIV SRC; SRC存除数,8位(字节)或16位(字) 字节除法:(AX)/(SRC) → AL, 余数→ AH 字除法:(DX:AX)/(SRC) → AX, 余数→ DX 当:除数为0,即(SRC)=0 ; 或商溢出:即(AL)0FFH 或 (AX)0FFFFH ; 产生0型中断(除法出错中断)。 (2)带符号数除法指令 指令格式: IDIV SRC 操作数、商及余数均带符号且用补码表示。 当除数为0 或商超出最大值或最小值时,产生0型中断。 最大正数商:+127(字节),+32767(字) 最小负数商:-128(字节), -32768(字) (五)类型转换指令 指令格式:CBW/CWD;隐含使用AH/DX CBW :扩展AL中的符号位至AH中 CWD:扩展AX中的符号位至DX中 例
文档评论(0)