计组实验二实验报告-80868088指令系统

合集下载

04 8088(8086)的指令系统

04 8088(8086)的指令系统

INC OPRD
操作数:通用寄存器、存储器 (不能是段寄存器或立即数) 执行的操作:OPRD OPRD + 1
功能: 用于在循环中修改地址指针及循环次数等。
注:该指令影响标志位
例: INC BX INC byte ptr [SI]
1. 先将SP所指单元内容 送至AL, 然后 SP+1SP ;
2. 再SP所指单元内容送 至AH, 然后 SP+1 SP
例:MOV AX,5678H POP AX
(3) 交换指令 XCHG OPRD1, OPRD2
在寄存器间或寄存器与存储器间交换信息(不允许使用段寄存器)。
源操作数: 寄存器、存储器 目的操作数:寄存器、存储器 执行的操作:( OPRD1) (OPRD2 )
DS=1000h
buffer 10100h 00 02 00 20
0100h BX
(2) LDS 把源操作数指定的内存的4个相继字节的内容送至指定寄存器及DS中
LDS REG, SRC
(REG) (SRC)
(DS) (SRC+2)
目的操作数
源操作数
(16位通用寄存器) (内存操作数)
• 该指令完成一个32位地址指针的传送; • 该指令通常指定 SI 作寄存器 REG。
• CPU内部寄存器之间的数据传送(除CS,IP外) MOV AL,BL MOV DX, DI MOV SI, BP MOV DS, BX MOV AX,DX
• 立即数传送到CPU内部通用寄存器组(AX,BX,CX,DX,BP,SP,DI,SI)
MOV CL, 4 MOV DX, 03FFH MOV DI, 04BFH
DST+SRC+C

03_8086 8088指令系统

03_8086 8088指令系统
+COUNT=1050H ←─┐ │ 操作码│
————————— │ ├───────┤
32050H ┐ │ │ 操作码│
│ │ ├───────┤
│ │ ┌──────┼ 50H │
AL│64H│ │ │ ... │
└─┬─┘ └──→31000H├───────┤
└───────────────→│ │
├───────┤
寄存器间接寻址方式的指令执行情况
│ opcode │ │ mod │ reg │ r/m │ │ disp │ │ Data │
└─────────┘ └────────┴────────┴────────┘ └───────┘ └───────┘
操作码 方式寄存器 (Mod) 位移量 立即数
---规定操作数的方法,即指令中用于说明操作数所在地址的方法,称为寻址方式
----8086/8088 的寻址方式分为两类:数据寻址方式,转移地址寻址方式
①,数据寻址方式
a,立即寻址
----立即操作数:
--当数据为8位或16位时,可直接放在指令本身的最后一个字节(8位)或两个字节(16位)中,这样的数据
+ 1000H ├───────┤
————————— │ │
31000H ─┐ ├───────┤
│ │ │
┌───┐ │ 30000H├───────┤ MOV [BX],AL
称为立即操作数
----例子:
MOV AL,80H
MOV AX,1234H
----图示: AH AL
┌──────┐ 程序存储器 ┌───┬───┐ 程序存储器

计组8086指令格式实验报告

计组8086指令格式实验报告

编码16位模式32位模式操作)000AX EAX AL001CX ECX CL010DX EDX DL011BX EBX BL100SP ESP AH101BP EBP CH110SI ESI DH111DI EDI BHR/M字段受MOD字段控制。

若MOD=11,为寄存器方式,R/M字段将指出第二操作数所在寄存器编号。

MOD=00,01,10为存储器方式,R/M则指出如何计算存储器中操作数地址。

MOD与R/M字段组合的寻址方式见表3。

表3 各种MOD与R/M字段组合编码及有关地址的计算(16位地址模式下)MOD=11寄存器寻址MOD≠11存储寻址、有效地址的计算公式R/M W=1W=0R/M不带位移l量MOD=00带8位位移量MOD=01带16位位移量MOD=10 000AX AL000[BX+SI][BX+SI+D8][BX+SI+D16]001CX CL001[BX+DI][BX+DI+D8][BX+SI+D16]010DX DL010[BP+SI][BP+SI+D8][BP+SI+D16]011BX BL011[BP+DI][BP+DI+D8][BP+DI+D16]100SP AH100[SI][SI+D8][SI+D16]101BP CH101[DI][DI+D8][DI+D16]110SI DH110(直接寻址)[BP+D8][BP+D16]111DI BH111[BX][BX+D8][BX+D16]例如:指令MOV AH,[BX+DI+50H]。

代码格式如下。

OPCODE D W MOD REG R/M DISP—8100010 1 0 01 100 001 01010000指令码:8A6150H。

指令ADD DISP [BX] [DI],DX;DISP=4523H代码格式:OPCODE D W MOD REG R/M DISP—Lo DISP—Hi000000 0 1 10 010 001 00100011 01000101指令码为:01 91 23 45H。

第2章 8086-8088的指令系统

第2章 8086-8088的指令系统

SP=003EH SP=0040H
7/20/2013 1:42 AM
34 12
23
堆栈操作指令
格式: POP dest 功能:将SP所指向的栈顶的一个字传送给通用寄存器、段 寄存器(CS除外)或存储器。同时进行修改堆栈指针 的操作,即: SP←SP+2
例如: POP DX POP CX
7/20/2013 1:42 AM
7/20/2013 1:42 AM 4
寄存器寻址
操作数在CPU内部的寄存器中。 例如:MOV BX,AX ADD AL,BL BX AX
16位的操作数通常用8个16位通用寄存器(段寄存器仅用在 部分传送指令中),因通用寄存器是处理器的一部分,因 此寄存器寻址方式可以提高工作效率。其中AX称为累加 器,若操作数存放在AX中的话,通常指令执行时间要短 些。
7/20/2013 1:42 AM 10
变址寻址(寄存器相对寻址)
例如:MOV [BX+6],AL 或 MOV 6[BX],AL MOV [BP+6],AX 或 MOV 6[BP],AX MOV AX,COUNT [SI]
操作数在某个存储单元中,其偏移地址是指定的寄存器的 内容与指令中给出的位移量相加之和。段地址依据使用的 寄存器的不同而不同。 [BX] [BP] 8位偏移量 EA = [SI] + 16位偏移量 [DI] 变址寻址的速度比直接寻址慢,因为CPU必须执行一次加 法操作才能获得有效地址。
7/20/2013 1:42 AM 19


例:给定一个堆栈区,地址为:
1250H:0000H ~ 1250H:0100H,(SP)=0052H, 问:(1)当前的栈顶地址 (2)栈底地址 (3)段基地址SS (4)若存入数据1234H,如何放臵?此时SP的值如何?

实验报告——找出80868088指令系统所有指令的操作码的编码

实验报告——找出80868088指令系统所有指令的操作码的编码

实验二找出8086/8088指令系统所有指令的操作码的编码一、实验目的本实验旨在利用debug工具的e和u功能找出8086/8088指令系统的指令格式中各种操作码编码对应的指令功能。

二、试验原理:1、每条指令1~6个字节不等2、指令的第一字节为操作码,规定指令的操作类型。

第二字节规定操作数的寻址方式接着以后的3~6 字节依据指令的不同取舍。

3、第一个字节的八个二进制位中前六位为操作码的主要部分,之后一位是D字段,然后是W字段,W指出操作数类型:W=0 为字节,W=1 为字,D指出操作数的传送方向:D=0 寄存器操作数为源操作数,D=1 寄存器操作数为目标操作数。

4、用DOS的输入/输出重定向功能,让debug自动执行一批命令。

三、试验内容和步骤1、用试探法(1)打开debug,输入如下内容:-e 100 00 00 00 00 00 00-u 100 1050B5D:0100 0000 ADD [BX+SI],AL0B5D:0102 0000 ADD [BX+SI],AL0B5D:0104 0000 ADD [BX+SI],AL可以得到如下结果:结论:操作码字节前六位为000000(二进制)看来是一条ADD指令,而且只占两个字节。

记下来:指令码汇编指令---------------------------------------------------------------------0B5D:0100 0000 ADD [BX+SI],AL(2)将指令首字节变为01,重复以上实验-e 100 01 00-u 100 1010B5D:0100 0100 ADD [BX+SI],AX得到以下结果:结论:第1字节由00(二进制0000 0000)变为01(二进制0000 0001),ADD指令的第二个操作数由AL变为了AX。

AL为8位寄存器、AX为16位寄存器,印证了W字段的作用,增加一条有用的记录:指令码汇编指令-------------------------------------------------------------------------0B5D:0100 0000 ADD [BX+SI],AL0B5D:0100 0100 ADD [BX+SI],AX(3)将指令首字节变为02,重复以上实验-e 100 02 00-u 100 1010B5D:0100 0200 ADD AL,[BX+SI]得到以下结果:结论:第1字节由00(二进制0000 0000)变为02(二进制0000 0010),ADD 操作的传送方向发生转变,印证了D字段的作用。

机组实验二报告—找出8086 8088指令系统所有指令的操作码的编码

机组实验二报告—找出8086 8088指令系统所有指令的操作码的编码

实验二找出8086/8088指令系统所有指令的操作码的编码实验目的:本实验旨在利用debug工具的e和u功能找出8086/8088指令系统的指令格式中各种操作码编码对应的指令功能,得到8086/8088操作码从00~FF所对应的汇编指令名字。

附:本次实验用到的e和u功能的解释:debug的e命令、u命令的作用及用法:e 100...表示从100号单元开始编写内容;u 100 105表示将100~105号单元共6个字节反汇编出来、所谓“反汇编”就是把机器码还原成汇编语句。

每次先用e命令改写100号单元(从00到FF,第一次是00,第二次是 01,第三次是02,第四次是03,……,最后一次是FF),再用u命令反汇编出指令,再记录下来。

第一回合实验步骤:一、启动debug程序:鼠标单击“开始->程序->附件->命令提示符”,打开DOS(其实虚拟DOS)窗口,出现命令提示符Microsoft Windows XP [版本5.1.2600]<C>版权所有1985-2001 Microsoft Corp.输入debug并按回车键,出现一个debug程序的提示符,一个短杆如下图所示:二、用试探法-e 100 00 00 00 00 00 00-u 100 1051375:0100 0000 ADD [BX+SI],AL1375:0102 0000 ADD [BX+SI],AL1375:0104 0000 ADD [BX+SI],AL结论:操作码字节前六位为000000(二进制)看来是一条ADD指令,而且只占两个字节。

记下来:指令码汇编指令---------------------------------------------------------------------1375:0100 0000 ADD [BX+SI],AL分析:指令的第一字节为操作码,规定指令的操作类型。

第二章:80868088的指令系统修改

第二章:80868088的指令系统修改

25
1. 数据传送(Data Transter)
26
数据传送指令
1. 2. 3. 4. 通用数据传送指令(MOV、PUSH、POP、XCHG) 地址传送指令 (LEA、LDS、LES) 标志寄存器传送指令(LAHF、SAHF、PUSHF、POPF) 累加器专用传送指令(IN、OUT、XLAT)
34
例如: XCHG AL,CL XCHG AX,DI XCHG BX,SI XCHG AX,BUFFER XCHG DATA[SI],DH
ቤተ መጻሕፍቲ ባይዱ
35
数据传送指令
1. 2. 3. 4. 通用数据传送指令(MOV、PUSH、POP、XCHG) 累加器专用传送指令(IN、OUT、XLAT) 地址传送指令 (LEA、LDS、LES) 标志寄存器传送指令(LAHF、SAHF、PUSHF、POPF)
MOV AL, DS:[2000H](MOV AL,[2000H])
13
直接寻址方式(Direct Addressing)
若DS=4000H,则此指令式将数据段中物理地址为42000H 单元的 内容传送AL寄存器。例: MOV AL,[2000H]; [DS*10H+2000H]送 AL; MOV AX,[2000H]; [DS*10H+2000H]送AL,[DS*10H+2000H+1]送AH; MOV AL,ES:[2000H]; 这里ES是段超越前缀,所以源操作数是在ES*10H+2000H的内存单元中。 MOV [3000H],AL; 目的操作数采用直接寻址,将AL送[DS*10H+3000H]的内存单元。
29
数据传送指令——通用数据传送指令
对于MOV 指令应注意几个问题: ①存储器传送指令中,不允许对IP进行操作,CS不能作为目的操作数; ②两个操作数中,除立即寻址之外必须有一个为寄存器寻址方式,即 两个存储器操作数之间不允许直接进行信息传送;如我们需要把地 址(即段内的地址偏移量)为AREA1的存储单元的内容,传送至同一段 内的地址为AREA2的存储单元中去,MOV指令不能直接完成这样的 传送,但我们可以CPU内部寄存器为桥梁来完成这样的传送: MOV AL,AREA1 MOV AREA2,AL ③两个段寄存器之间不能直接传送信息,也不允许用立即寻址方式为 段寄存器赋初值;如: MOV AX,0 MOV DS,AX ④目的操作数,不能用立即寻址方式。

8086-8088指令系统

8086-8088指令系统

实验二(找出8086/8088指令系统所有指令的操作码的编码)一、实验目的本实验旨在利用debug工具的e和u功能找出8086/8088指令系统的指令格式中各种操作码编码对应的指令功能。

二、实验原理已经知道:1、每条指令1~6个字节不等2、指令的第一字节为操作码,规定指令的操作类型。

第二字节规定操作数的寻址方式接着以后的3~6 字节依据指令的不同取舍。

3、第一个字节的八个二进制位中前六位为操作码的主要部分,之后一位是D字段,然后是W字段,W指出操作数类型:W=0 为字节,W=1 为字,D指出操作数的传送方向:D=0 寄存器操作数为源操作数,D=1 寄存器操作数为目标操作数。

三、实验步骤(一)1、用试探法结论:操作码字节前六位为000000(二进制)看来是一条ADD指令,而且只占两个字节。

记下来:指令码汇编指令---------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL2、将指令首字节变为01,重复以上实验结论:第1字节由00(二进制0000 0000)变为01(二进制0000 0001),ADD指令的第二个操作数由AL变为了AX。

AL为8位寄存器、AX为16位寄存器,印证了W字段的作用,增加一条有用的记录:指令码汇编指令-------------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX3、将指令首字节变为02,重复以上实验第1字节由00(二进制0000 0000)变为02(二进制0000 0010),ADD 操作的传送方向发生转变,印证了D字段的作用。

增加一条记录:指令码汇编指令------------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]4、将指令首字节变为03,重复以上实验D和W同时变化,记下:指令码汇编指令-----------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]037F:0100 0300 ADD AX,[BX+SI](二)1、首字节为04~07,继续实验(1)首字节为04,继续实验(2)首字节为05,继续实验(3)首字节为06,继续实验(4)首字节为07,继续实验-得到四条新的记录,出现了第1个3字节指令050000(ADD AX,0000),还捕获了两条新的单字节指令:指令码汇编指令----------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]037F:0100 0300 ADD AX,[BX+SI]037F:0100 0400 ADD AL,00037F:0100 050000 ADD AX,0000037F:0100 06 PUSH ES037F:0100 07 POP ES2、08~0b,继续-是四条OR指令:指令码汇编指令--------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]037F:0100 0300 ADD AX,[BX+SI]037F:0100 0400 ADD AL,00037F:0100 050000 ADD AX,0000037F:0100 06 PUSH ES037F:0100 07 POP ES037F:0100 0800 OR [BX+SI],AL037F:0100 0900 OR [BX+SI],AX037F:0100 0A00 OR AL,[BX+SI]037F:0100 0B00 OR AX,[BX+SI](三)1、用in1-zsl.txt生成out1-zsl.txt原理:用DOS的输入/输出重定向功能,让debug自动执行一批命令。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

HUNAN UNIVERSITY 课程实习报告题目: 8086/8088指令系统学生姓名学生学号专业班级计算机科学与技术2班指导老师完成日期2013年4月21日一、实验目的利用debug工具的e和u功能找出8086/8088指令系统的指令格式中各种操作吗编码对应的指令功能,得到8086/8088操作吗从00~FF所对应的的汇编指令的名字。

并加以分析总结,形成你的关于8086/8088指令系统操作码编码方法的实验报告。

二、实验过程1、编写C++程序,生成debug的输入文件(shuru.txt)2、将shuru.txt复制到debug的根目录下,在debug界面输入如下指令“debug <shuru.txt >out.txt”,在debug的根目录下,生成了输出文本文件out.txt。

打开out.txt,对256条记录进行整理,如下所示。

3、固定前两位为00,将第二字节从00变为ff,观察汇编指令变化。

编写C++程序如下:4、将shuru2.txt复制到debug的根目录下,在debug界面输入如下指令“debug <shuru.txt >out2.txt”,在debug的根目录下,生成了输出文本文件out2.txt。

打开out2.txt,对256条记录进行分析。

三、256条记录指令码汇编指令------------------------------------------------------------- 0B76:0100 0000 ADD [BX+SI],AL0B76:0100 0100 ADD [BX+SI],AX0B76:0100 0200 ADD AL,[BX+SI]0B76:0100 0300 ADD AX,[BX+SI]0B76:0100 0400 ADD AL,000B76:0100 050000 ADD AX,00000B76:0100 06 PUSH ES0B76:0100 07 POP ES0B76:0100 0800 OR [BX+SI],AL0B76:0100 0900 OR [BX+SI],AX0B76:0100 0A00 OR AL,[BX+SI]0B76:0100 0B00 OR AX,[BX+SI]0B76:0100 0C00 OR AL,000B76:0100 0D0000 OR AX,00000B76:0100 0E PUSH CS0B76:0100 0F DB 0F0B76:0100 1000 ADC [BX+SI],AL0B76:0100 1100 ADC [BX+SI],AX0B76:0100 1200 ADC AL,[BX+SI]0B76:0100 1300 ADC AX,[BX+SI]0B76:0100 1400 ADC AL,000B76:0100 150000 ADC AX,00000B76:0100 16 PUSH SS0B76:0100 17 POP SS0B76:0100 1800 SBB [BX+SI],AL0B76:0100 1900 SBB [BX+SI],AX0B76:0100 1A00 SBB AL,[BX+SI]0B76:0100 1B00 SBB AX,[BX+SI]0B76:0100 1C00 SBB AL,000B76:0100 1D0000 SBB AX,00000B76:0100 1E PUSH DS0B76:0100 1F POP DS0B76:0100 2000 AND [BX+SI],AL0B76:0100 2100 AND [BX+SI],AX0B76:0100 2200 AND AL,[BX+SI]0B76:0100 2300 AND AX,[BX+SI]0B76:0100 2400 AND AL,000B76:0100 250000 AND AX,00000B76:0100 26 ES:0B76:0100 27 DAA0B76:0100 2800 SUB [BX+SI],AL 0B76:0100 2900 SUB [BX+SI],AX 0B76:0100 2A00 SUB AL,[BX+SI] 0B76:0100 2B00 SUB AX,[BX+SI] 0B76:0100 2C00 SUB AL,000B76:0100 2D0000 SUB AX,00000B76:0100 2E CS:0B76:0100 2F DAS0B76:0100 3000 XOR [BX+SI],AL 0B76:0100 3100 XOR [BX+SI],AX 0B76:0100 3200 XOR AL,[BX+SI] 0B76:0100 3300 XOR AX,[BX+SI] 0B76:0100 3400 XOR AL,000B76:0100 350000 XOR AX,00000B76:0100 36 SS:0B76:0100 37 AAA0B76:0100 3800 CMP [BX+SI],AL 0B76:0100 3900 CMP [BX+SI],AX 0B76:0100 3A00 CMP AL,[BX+SI] 0B76:0100 3B00 CMP AX,[BX+SI] 0B76:0100 3C00 CMP AL,000B76:0100 3D0000 CMP AX,00000B76:0100 3E DS:0B76:0100 3F AAS0B76:0100 40 INC AX0B76:0100 41 INC CX0B76:0100 42 INC DX0B76:0100 43 INC BX0B76:0100 44 INC SP0B76:0100 45 INC BP0B76:0100 46 INC SI0B76:0100 47 INC DI0B76:0100 48 DEC AX0B76:0100 49 DEC CX0B76:0100 4A DEC DX0B76:0100 4B DEC BX0B76:0100 4C DEC SP0B76:0100 4D DEC BP0B76:0100 4E DEC SI0B76:0100 4F DEC DI0B76:0100 50 PUSH AX0B76:0100 51 PUSH CX0B76:0100 52 PUSH DX 0B76:0100 53 PUSH BX 0B76:0100 54 PUSH SP0B76:0100 55 PUSH BP0B76:0100 56 PUSH SI0B76:0100 57 PUSH DI0B76:0100 58 POP AX 0B76:0100 59 POP CX 0B76:0100 5A POP DX 0B76:0100 5B POP BX 0B76:0100 5C POP SP0B76:0100 5D POP BP0B76:0100 5E POP SI0B76:0100 5F POP DI0B76:0100 60 DB 600B76:0100 61 DB 610B76:0100 62 DB 620B76:0100 63 DB 630B76:0100 64 DB 640B76:0100 65 DB 650B76:0100 66 DB 660B76:0100 67 DB 670B76:0100 68 DB 680B76:0100 69 DB 690B76:0100 6A DB 6A0B76:0100 6B DB 6B0B76:0100 6C DB 6C0B76:0100 6D DB 6D0B76:0100 6E DB 6E0B76:0100 6F DB 6F0B76:0100 7000 JO 01020B76:0100 7100 JNO 0102 0B76:0100 7200 JB 01020B76:0100 7300 JNB 0102 0B76:0100 7400 JZ 01020B76:0100 7500 JNZ 0102 0B76:0100 7600 JBE 0102 0B76:0100 7700 JA 01020B76:0100 7800 JS 01020B76:0100 7900 JNS 0102 0B76:0100 7A00 JPE 0102 0B76:0100 7B00 JPO 0102 0B76:0100 7C00 JL 01020B76:0100 7D00 JGE 01020B76:0100 7E00 JLE 01020B76:0100 7F00 JG 01020B76:0100 800000 ADD BYTE PTR [BX+SI],000B76:0100 81000000 ADD WORD PTR [BX+SI],0000 0B76:0100 820000 ADD BYTE PTR [BX+SI],000B76:0100 830000 ADD WORD PTR [BX+SI],+00 0B76:0100 8400 TEST AL,[BX+SI]0B76:0100 8500 TEST AX,[BX+SI]0B76:0100 8600 XCHG AL,[BX+SI]0B76:0100 8700 XCHG AX,[BX+SI]0B76:0100 8800 MOV [BX+SI],AL0B76:0100 8900 MOV [BX+SI],AX0B76:0100 8A00 MOV AL,[BX+SI]0B76:0100 8B00 MOV AX,[BX+SI]0B76:0100 8C00 MOV [BX+SI],ES0B76:0100 8D00 LEA AX,[BX+SI]0B76:0100 8E00 MOV ES,[BX+SI]0B76:0100 8F00 POP [BX+SI]0B76:0100 90 NOP0B76:0100 91 XCHG CX,AX0B76:0100 92 XCHG DX,AX0B76:0100 93 XCHG BX,AX0B76:0100 94 XCHG SP,AX0B76:0100 95 XCHG BP,AX0B76:0100 96 XCHG SI,AX0B76:0100 97 XCHG DI,AX0B76:0100 98 CBW0B76:0100 99 CWD0B76:0100 9A00000000 CALL 0000:00000B76:0100 9B WAIT0B76:0100 9C PUSHF0B76:0100 9D POPF0B76:0100 9E SAHF0B76:0100 9F LAHF0B76:0100 A00000 MOV AL,[0000]0B76:0100 A10000 MOV AX,[0000]0B76:0100 A20000 MOV [0000],AL0B76:0100 A30000 MOV [0000],AX0B76:0100 A4 MOVSB0B76:0100 A5 MOVSW0B76:0100 A6 CMPSB0B76:0100 A7 CMPSW0B76:0100 A800 TEST AL,000B76:0100 A90000 TEST AX,00000B76:0100 AA STOSB0B76:0100 AB STOSW0B76:0100 AC LODSB0B76:0100 AD LODSW0B76:0100 AE SCASB0B76:0100 AF SCASW0B76:0100 B000 MOV AL,000B76:0100 B100 MOV CL,000B76:0100 B200 MOV DL,000B76:0100 B300 MOV BL,000B76:0100 B400 MOV AH,000B76:0100 B500 MOV CH,000B76:0100 B600 MOV DH,000B76:0100 B700 MOV BH,000B76:0100 B80000 MOV AX,00000B76:0100 B90000 MOV CX,00000B76:0100 BA0000 MOV DX,00000B76:0100 BB0000 MOV BX,00000B76:0100 BC0000 MOV SP,00000B76:0100 BD0000 MOV BP,00000B76:0100 BE0000 MOV SI,00000B76:0100 BF0000 MOV DI,00000B76:0100 C0 DB C00B76:0100 C1 DB C10B76:0100 C20000 RET 00000B76:0100 C3 RET0B76:0100 C400 LES AX,[BX+SI]0B76:0100 C500 LDS AX,[BX+SI]0B76:0100 C60000 MOV BYTE PTR [BX+SI],000B76:0100 C7000000 MOV WORD PTR [BX+SI],0000 0B76:0100 C8 DB C80B76:0100 C9 DB C90B76:0100 CA0000 RETF 00000B76:0100 CB RETF0B76:0100 CC INT 30B76:0100 CD00 INT 000B76:0100 CE INTO0B76:0100 CF IRET0B76:0100 D000 ROL BYTE PTR [BX+SI],10B76:0100 D100 ROL WORD PTR [BX+SI],10B76:0100 D200 ROL BYTE PTR [BX+SI],CL0B76:0100 D300 ROL WORD PTR [BX+SI],CL0B76:0100 D400 AAM 000B76:0100 D500 AAD 000B76:0100 D6 DB D60B76:0100 D7 XLAT0B76:0100 D800 FADD DWORD PTR [BX+SI] 0B76:0100 D900 FLD DWORD PTR [BX+SI]0B76:0100 DA00 FIADD DWORD PTR [BX+SI] 0B76:0100 DB00 FILD D WORD PTR [BX+SI]0B76:0100 DC00 FADD QWORD PTR [BX+SI] 0B76:0100 DD00 FLD QWORD PTR [BX+SI]0B76:0100 DE00 FIADD WORD PTR [BX+SI] 0B76:0100 DF00 FILD W ORD PTR [BX+SI]0B76:0100 E000 LOOPNZ 01020B76:0100 E100 LOOPZ 01020B76:0100 E200 LOOP 01020B76:0100 E300 JCXZ 01020B76:0100 E400 IN AL,000B76:0100 E500 IN AX,000B76:0100 E600 OUT 00,AL0B76:0100 E700 OUT 00,AX0B76:0100 E80000 CALL 01030B76:0100 E90000 JMP 01030B76:0100 EA00000000 JMP 0000:00000B76:0100 EB00 JMP 01020B76:0100 EC IN AL,DX0B76:0100 ED IN AX,DX0B76:0100 EE OUT DX,AL0B76:0100 EF OUT DX,AX0B76:0100 F0 LOCK0B76:0100 F1 DB F10B76:0100 F2 REPNZ0B76:0100 F3 REPZ0B76:0100 F4 HLT0B76:0100 F5 CMC0B76:0100 F60000 TEST BYTE PTR [BX+SI],000B76:0100 F7000000 TEST WORD PTR [BX+SI],0000 0B76:0100 F8 CLC0B76:0100 F9 STC0B76:0100 FA CLI0B76:0100 FB STI0B76:0100 FC CLD0B76:0100 FD STD0B76:0100 FE00 INC BYTE PTR [BX+SI]0B76:0100 FF00 INC WORD PTR [BX+SI]三、8086/8088指令系统操作码编码方法8086/8088 指令系统采用了一种灵活的,由1~6 个字节组成的变字长的指令格式,包括操作码、寻址方式以及操作数3 部分。

相关文档
最新文档