第十讲8086的指令系统.pptVIP

  • 1
  • 0
  • 约6.93千字
  • 约 37页
  • 2017-08-12 发布于天津
  • 举报
第十讲8086的指令系统.ppt

第一部分 指令系统概述 8086/8088的指令系统中共有92种基本指令。 可以分成6个功能组: 1. 数据传送(Data transfer) 2. 算术运算(Arithmetic) 3. 逻辑运算和移位指令(Logic Shift) 4. 串操作(String manipulation) 5. 控制转移(Control Transfer) 6. 处理器控制(Processor Control) 作业: 3.39(1)~(6),3.44,3.46 信息交换要通过端口, 在IBMPC机里,可以配接许多外部设备, 每个外设与CPU之间交换数据,状态信息和控制命令, 每一种信息交换都要通过一个端口来进行。 端口数:外部设备最多有65536个I/O端口。 A0~A15译码形成。 端口号:端口号(即外设端口地址)为0000H~FFFFH。 PC机仅使用A0~A9译码形成I/O口地址,即1024H个口地址 端口号:0000H~03FFH 其中: A9=1,表示扩充槽上的口地址。 长格式: 端口号中前256个端口(0~FFH),可以直接写在指令中,这就是长格式。 端口号代替指令中的PORT, 机器指令用二字节表示,第二字节就是端口号。 短格式: 当端口号≥256时,只能使用短格式, 必须先把端口号放到DX寄存器中。 不需要用任何段寄存器来修改它的值。 * 第四讲8086/8088的指令系统 复习7种寻址方式 1.立即数寻址 MOV AX,09A0H 2.寄存器寻址 MOV AX,BX 3.直接寻址 MOV AX,(09A0H) 4.寄存器间接寻址 MOV AX,[BX] 5.相对的寄存器间接寻址 MOV AX,[BX+55H] 6.基址加变址寻址 MOV [BX+SI] , AX 7.相对的基址加变址寻址 MOV 55H[BX+SI] , AX 介绍指令系统使用的符号: 八位寄存器: AH,AL,BH,BH,BL,CH,CL,DH,DL 十六位通用寄存器: AX,BX,CX,DX,SP,BP,SI,DI 堆栈指针 SP 指令指针 IP(或PC) 标志位 Flags 目的和源变址寄存器 DI, SI 段寄存器 CS, DS, ES, SS src , dest 源,目的操作数(下列寻址方式都可以用) [BX+SI+n],[BX+DI+n],[BP+SI+n],[BP+DI+n] [SI+n], [DI+n], [BP+n], [BX+n] [N], r [ ] 存储器单元的内容(正常在数据段) ES:[ ] 附加存储器段的内容 OPRD 操作数 Seg 段寄存器(CS,DS,ES,SS) i m 立即数 (n 8位, nn 16位, nnnn 32位 ) 8086/8088指令助记符表 (自学) 自学 自学 第二部分 8086/8088指令系统 一、 数据传送指令(Data transfer) (一)通用传送指令(General Purpose Transfer) (二)输入输出指令(Input and Output) (三)目的地址传送指令(Address-object transfer) (四)标志传送指令(Flag register transfer) (一)通用传送指令(General Purpose Transfer) 8088提供方便灵活的通用的传送操作,适用于大多数操作数。 通用传送指令(除了XCHG以外)是唯一允许以段寄存器为操作数指令。 通用传送指令包括: 1、MOV (Movement) 2、PUSH (Push word onto stack) POP (Pop word off stack) 3、XCHG (Exchange) 4、XLAT (Translate) 1. MOV dest, src ; (dest) ? (src) 目的 源 目的 ? 源 功能: 把一个字节(B)或一个字(W)操作数由源传送至目的。 实现: 寄存器 ? 寄存器/存储器之间; 立即数?寄存器/存储器 寄存器/存储器?段寄存器之间的数据传送。 ? 具体说,通用数据传送指令能实现: ① CPU内部寄存器之间的数据的任意传送 (除了码段寄存器CS和指令指针IP以外)。 段寄存

文档评论(0)

1亿VIP精品文档

相关文档