MIS硬件原理指令..doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MIS硬件原理指令.

一、指令与指令系统 (一)指令(Instruction) 指令是计算机执行某种操作命令:内容包括做什么操作,操作数的来源,结果的存放,以及下一条指令的位置等等。 1、传送类; 2、加工处理类:算术运算、逻辑运算、移位循环; 3、控制类:转移、调用、中断等; 4、串操作类; (二)指令系统:所有指令的集合 8086 CPU 包含133条指令。 (三 )程序:一些指令的有机结合,用于完成某种目的。 8086指令系统 8086指令系统操作数符号表示 DST: 目的操作数 SRC: 源操作数 TARGET: 循环、转移和调用指令操作数 reg: 寄存器操作数,字节或字 reg8: 寄存器操作数,字节 reg16: 寄存器操作数,字 mem: 存储器操作数,字节或字 mem8: 字节型存储器操作数 mem16: 字型存储器操作数 mem32: 双字型存储器操作数 acc: 累加器AL或AX 操作数符号表示 seg_reg:段寄存器 imm:立即操作数,字节或字 imm8:8位立即操作数 imm16:16位立即操作数 short_label:短标号(8位偏移量) near_label:近标号(16位地址或偏移) far_label:远标号(32位地址) 数据传送指令 (一)通用数据传送指令 1、MOV DST,SRC;(DST) ←(SRC), 不影响标志位。 具体指令: mov mem, acc mov acc, mem mov reg, reg mov reg, mem mov mem, reg mov reg, imm mov mem, imm mov seg_reg,reg16 ;CS除外 mov seg_reg,mem16 ;CS除外 mov reg16,seg_reg mov mem16,seg_reg 例 合法指令 MOV AX,[SI] ; (AX) ←((SI)) MOV AL,[SI] ; (AL) ←((SI)) MOV DS,AX ; (DS) ←(AX) MOV AX,DS; (AX) ←(DS) MOV SI,2000H; (SI) ←2000H MOV [SI],20H; ((SI)) ←20H MOV SI,[2000H] ; (SI) ←(2000H) MOV SI,[SI+6] ; (SI) ←((SI)+6) MOV AX,AX ; (AX) ←(AX) 非法指令: 存储器之间,立即数至段寄存器,段寄存器之间的传送;操作数类型不匹配,字对字节传送 例MOV [SI],[2000H] MOV CS,BX MOV DS, 2000H 2、堆栈及堆栈操作 (1)、堆栈 堆栈是一种按先进后出(FILO)原则存取的存储器,它由堆栈指针寄存器SS:SP和RAM中的一部分组成,主要用于保护现场和恢复现场。 SP的内容总是指向栈顶,即最后推入信息所在单元。 (2)进栈指令 PUSH SRC ;(SP) ←(SP)-2, ((SP)+1,(SP)) ←(SRC) 具体指令: PUSH reg16 PUSH seg_reg PUSH mem16 (3)出栈指令 POP DST ;(DST) ←((SP)+1, (SP)), (SP)←(SP)+2) 具体指令: POP reg16 POP seg_reg POP mem16 3、交换指令 XCHG DST,SRC ;(DST)=(SRC) 具体指令: XCHG reg , mem/ reg XCHG reg, acc 例: XCHG AX,BX ;(AX)=(BX) XCHG AL,BL ;(AL)=(BL) (二)累加器专用传送指令 1、输入指令 IN AL,PORT;(AL) ←(PORT) IN AX,PORT;(AX) ←(PORT) IN AL,DX;(AL) ←((DX)) IN AX,DX;(AX) ←((DX)) PORT为8位直接地址,(DX)为16位端口地址 2、输出指令 OUT PORT,AL;(PORT) ←(AL) OUT PORT,AX;

文档评论(0)

bhzs + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档