




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.微机原理与接口技术第一章概 述二、计算机中的码制 (重点)P51、对于符号数,机器数常用的表示方法有原码、 反码和 补码三种。注意:对正数,三种表示法均相同。它们的差别在于对负数的表示。( 1)原码定义:符号位: 0 表示正, 1 表示负;数值位:真值的绝对值。注意:数 0 的原码不唯一( 2)反码定义:若 X<0 , 则 X 反 = 对应原码的符号位不变,数值部分按位求反( 3)补码定义:若X<0 , 则X 补 = X 反 +12、 8 位二进制的表示范围:原码: -127+127反码: -127+127补码: -128+1273、特殊数10000000该数在原码中定义为:-0
2、在反码中定义为:-127在补码中定义为:-128对无符号数:(10000000) = 128三、信息的编码1、 字符的编码P8计算机采用7 位二进制代码对字符进行编码(1 )数字 09 的编码是 01100000111001,它们的高 3 位均是 011 ,后 4 位正好与其对应的二进制代码(BCD 码)相符。(2 )英文字母AZ 的 ASCII 码从 1000001 (41H )开始顺序递增,字母az 的 ASCII 码从 1100001 ( 61H )开始顺序递增,这样的排列对信息检索十分有利。.第二章微机组成原理第一节、微机的结构1、计算机的经典结构冯. 诺依曼结构P11(1)微机由CP
3、U(运算器和控制器) 、存储器和I/O 接口组成2、 系统总线的分类( 1)数据总线( Data Bus ),它决定了处理器的字长。( 2)地址总线( Address Bus ) , 它决定系统所能直接访问的存储器空间的容量。( 3)控制总线( Control Bus )第二节、 8086 微处理器1、 8086 ,其内部数据总线的宽度是16 位, 16 位 CPU 。外部数据总线宽度也是16 位8086 地址线位20 根,有 1MB ( 2 20)寻址空间。P272、 8086CPU 从功能上分成两部分:总线接口单元(BIU )、执行单元( EU )BIU :负责 8086CPU 与存储器之
4、间的信息传送。EU:负责指令的执行。P284、寄存器结构(重点)1)数据寄存器特有的习惯用法P30AX :(Accumulator)累加器。 多用于存放中间运算结果。所有 I/O 指令必须都通过AX 与接口传送信息;BX : (Base) 基址寄存器。在间接寻址中用于存放基地址;CX : (Counter) 计数寄存器。用于在循环或串操作指令中存放循环次数或重复次数;DX :(Data) 数据寄存器。在32 位乘除法运算时,存放高16 位数;在间接寻址的I/O 指令中存放 I/O 端口地址。2)、指针和变址寄存器P31SP : (Stack Pointer) 堆栈指针寄存器,其内容为栈顶的偏移
5、地址;BP : (Base Pointer)基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。SI : (Source Index)源变址寄存器Index: 指针DI : (Destination Index)目标变址寄存器变址寄存器常用于指令的间接寻址或变址寻址。3)、段寄存器P28CS : (Code Segment)代码段寄存器,代码段用于存放指令代码DS : (Data Segment)数据段寄存器ES :(Extra Segment)附加段寄存器,数据段和附加段用来存放操作数SS :(Stack Segment) 堆栈段寄存器,堆栈段用于存放返回地址,保存寄存器内容,传递参数
6、4)、指令指针(IP ) P2916 位指令指针寄存器,其内容为下一条要执行的指令的偏移地址。5)、标志寄存器( 1)状态标志: P30进位标志位(CF ): (CarryFlag) 运算结果的最高位有进位或有借位,则CF=1。 Carry:进位Auxiliary : 辅助辅助进位标志位(AF ): (Auxiliary Carry Flag)运算结果的低四位有进位或借位,则AF=1.溢出标志位(OF ): (Overflow Flag)运算结果有溢出,则OF=1零标志位( ZF ): (Zero Flag) 反映指令的执行是否产生一个为零的结果符号标志位(SF ):(Sign Flag) 指
7、出该指令的执行是否产生一个负的结果奇偶标志位(PF ):(Parity Flag) 表示指令运算结果的低8 位 “ 1个”数是否为偶数(2 )控制标志位中断允许标志位(IF ): (Interrupt Flag)表示 CPU 是否能够响应外部可屏蔽中断请求跟踪标志( TF ): (Trap Flag)CPU单步执行5、 8086 的引脚及其功能(重点掌握以下引脚)P34AD 15 AD0 :双向三态的地址总线,输入/输出信号INTR :(Interrupt Request)可屏蔽中断请求输入信号,高电平有效。可通过设置IF 的值来控制。NMI : (Non_Maskable Interrupt
8、)非屏蔽中断输入信号。不能用软件进行屏蔽。RESET : (Reset) 复位输入信号,高电平有效。复位的初始状态见P21MN/MX : (Minimum/Maximum)最小最大模式输入控制信号。第三章8086 指令系统第一节 8086 寻址方式一、数据寻址方式(重点)1、立即寻址P46操作数 ( 为一常数 ) 直接由指令给出(此操作数称为立即数)立即寻址只能用于源操作数指令操作例: MOV AX ,3102H;执行后, (AH) = 31H , (AL) = 02H2、寄存器寻址P47( 1)操作数放在某个寄存器中( 2)源操作数与目的操作数字长要相同( 3)寄存器寻址与段地址无关3、直接
9、寻址P48(1)指令中直接给出操作数的16 位偏移地址偏移地址也称为有效地址(EA, EffectiveAddress)( 2)默认的段寄存器为 DS,但也可以显式地指定其他段寄存器称为段超越前缀( 3)偏移地址也可用符号地址来表示,如ADDR、 VAR例:MOVAX ,2A00H用 表示数字存放的地址MOVDX ,ES:2A00HMOVSI,TABLE_PTR4、间接寻址P48操作数的偏移地址(有效地址EA)放在寄存器中.只有 SI、DI 、 BX 和 BP 可作间址寄存器SI、DI 、 BX默认段地址DSBP 默认段地址SS例:MOVAX,BXMOVCL,CS:DI错误例:×MO
10、VAX, DX5、寄存器相对寻址P49EA= 间址寄存器的内容加上一个8/16 位的位移量例:MOVAX,BX+8MOVCX,TABLESIMOVAX,BP;BX.SI.DI 默认段寄存器DS,BP 默认段寄存器为SS指令操作例:MOVAX ,DATABX若 (DS)=6000H, (BX)=1000H, DA TA=2A00H,(63A00H)=66H,(63A01H)=55H则物理地址= 60000H + 1000H + 2A00H = 63A00H指令执行后:( AX ) =5566H6、基址变址寻址P51若操作数的偏移地址:EA= 基址寄存器 (BX 或 BP)+变址寄存器 (SI 或
11、 DI)同一组内的寄存器不能同时出现。错误例:×MOVAX,BX BP7、相对基址变址寻址P51EA= 基址寄存器 (BX 或 BP)+变址寄存器 (SI 或 DI)+8 位或 16 位位移量;指令操作例 : MOV AX , DATADIBX若(DS)=8000H, (BX)=2000H, (DI)=1000H, DATA=200H则指令执行后 (AH)=83021H,(AL)=83020H寄存器间接、寄存器相对、基址变址、相对基址变址四种寻址方式的比较:寻址方式指令操作数形式寄存器间接只有一个寄存器(BX/BP/SI/DI之一)寄存器相对一个寄存器加上位移量基址 变址两个不同类别
12、的寄存器相对基址 -变址两个不同类别的寄存器加上位移量第二节8086 指令系统一、数据传送指令(重点)1、 数据传送类指令(特点:除 SAHFPOPF 外均不影响 FR) P54.1. 通用MOVdst,src堆栈: PUSHPOP交换: XCHG查表: XLAT2.标志LAHFSAHFPUSHFPOPF3.地址:LEALDSLES4.输入 输出: INOUT(1) MOV dest , src; dest src传送的是字节还是字取决于指令中涉及的寄存器是8 位还是 16 位。具体来说可实现: MOV mem/reg1, mem/reg2指令中两操作数中至少有一个为寄存器MOV 指令的使用规
13、则IP 不能作目的寄存器不允许mem mem不允许segreg segreg立即数不允许作为目的操作数不允许segreg立即数源操作数与目的操作数类型要一致当源操作数为单字节的立即数,而目的操作数为间址、变址、基址+变址的内存数时,必须用 PTR 说明数据类型。如:MOV BX ,12H 是错误的。(2)、堆栈指令P54堆栈以 字为单位进行压入弹出操作。规定由 SS 指示堆栈段的段基址,堆栈指针SP 始终指向堆栈的顶部,SP 的初值规定了所用堆栈区的大小。堆栈的最高地址叫栈底。压栈指令 PUSHPUSHsrc; src 为 16 位操作数.例: PUSHAX;将 AX 内容压栈执行操作:( S
14、P) -1高字节AH(SP) -2低字节AL(SP)( SP) - 2注意进栈方向是高地址向低地址发展。弹出指令 POPPOPdest例: POPBX;将栈顶内容弹至BX执行操作:( BL )( SP)( BH )( SP)+1( SP)( SP) +2堆栈指令在使用时需注意的几点:堆栈操作总是按字进行不能从栈顶弹出一个字给CS堆栈指针为SS:SP, SP 永远指向栈顶SP 自动进行增减量(-2, +2 )(3)、交换指令XCHG P54格式: XCHGreg, mem/reg功能:交换两操作数的内容。要求:两操作数中必须有一个在寄存器中;操作数不能为段寄存器和立即数;源和目地操作数类型要一致
15、。( 4)查表指令 XLAT P57执行的操作: AL (BX)+(AL)又叫查表转换指令, 它可根据表项序号查出表中对应代码的内容。 执行时先将表的首地址(偏移地址)送到 BX 中,表项序号存于 AL 中。2、输入输出指令P57只限于用累加器AL 或 AX 来传送信息。功能 : (累加器 ) I/O 端口( 1) 输入指令 IN 格式 :IN acc,PORT ;PORT 端口号 0 255HIN acc,DX;DX 表示的端口范围达64K例 :IN AL , 80H ;(AL) (80H 端口 )IN AL ,DX;(AL) (DX)(2) 输出指令 OUT格式: OUTport,acc.
16、OUTDX,acc例: OUT 68H , AX;(69H , 68H)( AX )OUT DX , AL;(DX) (AL)在使用间接寻址的 IN/OUT 指令时,要事先用传送指令把 I/O 端口号设置到 DX 寄存器如:MOVDX , 220HINAL , DX; 将 220H 端口内容读入AL3、目标地址传送指令P58(1)LEA传送偏移地址格式: LEA reg , mem; 将指定内存单元的偏移地址送到指定寄存器要求:1) 源操作数 必须是一个 存储器操作数;2) 目的操作数必须是一个 16 位的通用寄存器。例: LEABX , SI+10H设:( SI) =1000H则执行该指令后
17、, (BX ) =1010H注意以下二条指令差别:LEA BX , BUFFERMOV BX , BUFFER前者表示将符号地址为BUFFER 的存储单元的偏移地址取到BX 中 ;后者表示将BUFFER 存储单元中的内容取到BX 中。下面两条指令等效:LEA BX , BUFFERMOV BX, OFFSET BUFFER其中 OFFSET BUFFER表示存储器单元BUFFER 的偏移地址。二者都可用于取存储器单元的偏移地址,但LEA 指令可以取动态的地址,OFFSET 只能取静态的地址。二、算术运算类指令(特点:除 CBWCWD 外均影响 FR)P601.加法:ADDADC2.减法:SUB
18、SBBCMP3.加 1减 1:INCDEC4. 求补: NEC5.乘法:MUL(无符号数 )IMUL(带符号数 )6.除法:DIV(无符号数)IDIV(带符号数)7.扩展:CBW(BW)CWD ( WDW )8.十进制调整:1)加法: DAA (组合)AAA (未组合)2)减法: DAS (组合)AAS (未组合).3)乘法: AAM (未组合)4)除法: AAD乘、除法指令注意事项:1. 无符号与带符号数所用指令不同;2. 八位乘法时,必有一个乘数在 AL 中,积在 AX 中;十六位乘法时, 必有一个乘数在 AX 中,积在 DX( 高 16 位)与 AX( 低 16 位)中;3. 八位除法时
19、,被除数在 AX 中 (16 位 ),商在 AL ,余数在 AH ;十六位除法时,被除数在 DX( 高 16 位 )与 AX( 低 16 位)中,商在 AX ,余数在 DX ;4. 十进制调整时, 乘、除法均只能使用未组合 BCD 码,并且除法是先调整后运算。1、 加法指令P61(1) 不带进位的加法指令 ADD格式:ADDacc,dataADDmem/reg,dataADDmem/reg1,mem/reg2?ADD 指令对 6 个状态标志均产生影响。判断溢出与进位(重点)从硬件的角度: 默认参与运算的操作数都是有符号数, 当两数的符号位相同, 而和的结果相异时有溢出,则 OF=1,否则 OF
20、=0(2)带进位的加法 ADC (Add with Carry) P62ADC 指令在形式上和功能上与ADD 类似,只是相加时还要包括进位标志CF 的内容,例如:ADCAL , 68H ; AL (AL)+68H+(CF)ADCAX,CX;AX (AX)+(CX)+(CF)ADCBX , DI;BX (BX)+DI+1DI+(CF)( 3)加 1 指令 INC (Increment)格式: INCreg/mem功能:类似于C 语言中的 +操作:对指定的操作数加1注:本指令不影响CF 标志。2、 减法指令P63( 1)不考虑借位的减法指令 SUB (Subtraction)格式: SUB des
21、t, src注: 1. 源和目的操作数不能同时为存储器操作数2. 立即数不能作为目的操作数.(2)考虑借位的减法指令SBB(Subtraction with Carry)SBB指令主要用于多字节的减法。格式: SBB dest, src操作: dest (dest)-(src)-(CF)(3)减 1 指令 DEC(Decrement)格式: DEC opr操作: opr (opr)-1( 4)求补指令 NEG(Negate) 格式: NEG opr操作: opr 0-(opr)对一个操作数取补码相当于用0 减去此操作数,故利用NEG 指令可得到负数的绝对值。例:若 (AL)=0FCH ,则执行
22、NEG AL 后,(AL)=04H , CF=1(5)比较指令CMP格式:CMPdest, src操作:(dest)-(src)CMP 也是执行两个操作数相减,但结果不送目标操作数,其结果只反映在标志位上。(4)非压缩BCD 码加法调整指令AAA P68AAA 指令的操作:如果 AL 的低 4 位 9 或 AF=1 ,则: AL (AL)+6,(AH) (AH)+1,AF 1 AL 高 4位清零 CF AF否则 AL 高4位清零(5)压缩BCD 码加法调整指令DAA P68两个压缩BCD 码相加结果在AL 中,通过 DAA 调整得到一个正确的压缩BCD 码.指令操作(调整方法 ):若 AL 的
23、低 4位9或 AF=1则 (AL) (AL)+6 , AF 1若 AL 的高 4位9或 CF=1则 (AL) (AL)+60H , CF 1除 OF 外, DAA 指令影响所有其它标志。DAA 指令应紧跟在 ADD 或 ADC 指令之后。(6)非压缩BCD 码减法调整指令AAS对 AL 中由两个非压缩的 BCD码相减的结果进行调整。调整操作为:若 AL 的低 4 位 9 或 AF=1,则: AL (AL)-6,AH (AH)-1,AF 1AL的高 4位清零. CF AF否则: AL 的高 4 位清零( 7)压缩 BCD码减法调整指令 DAS对 AL 中由两个压缩 BCD码相减的结果进行调整。调
24、整操作为:若 AL 的低 4 位 9 或 AF=1,则:AL (AL)-6,且 AF 1若 AL 的高 4 位 9 或 CF=1,则:AL (AL)-60H ,且 CF 1DAS对 OF无定义 , 但影响其余标志位。DAS指令要求跟在减法指令之后。3、 乘法指令P65进行乘法时: 8 位 *8 位 16 位乘积16 位 *16 位 32 位乘积(1) 无符号数的乘法指令 MUL(MEM/REG)格式: MULsrc操作:字节操作数(AX) (AL)× (src)字操作数(DX, AX) (AX) ×(src)指令例子:MUL BL; (AL) × ( BL), 乘
25、积在 AX中MUL CX; (AX) × ( CX), 乘积在 DX,AX中(2)有符号数乘法指令IMUL格式与 MUL 指令类似,只是要求两操作数均为有符号数 。指令例子:IMULBL; (AX) (AL) ×(BL)IMULWORD PTRSI ;(DX,AX) (AX) ×(SI+1SI)注意: MUL/IMUL指令中 AL(AX) 为隐含的乘数寄存器; AX(DX,AX) 为隐含的乘积寄存器; SRC 不能为立即数; 除 CF 和 OF外,对其它标志位无定义。4、除法指令P66进行除法时: 16 位 /8 位 8 位商32 位 /16 位 16 位商对被除
26、数、商及余数存放有如下规定:被除数商余数字节除法AXALAH.字除法DX:AXAXDX(1)无符号数除法指令DIV(Division)格式: DIVsrc操作:字节操作(AL) (AX) / (SRC)的商(AH)(AX) / (SRC)的余数字操作(AX) (DX, AX) / (SRC)的商(DX) (DX, AX) / (SRC)的余数(2)有符号数除法指令IDIV(Integer division)格式:IDIVsrc操作与 DIV 类似。商及余数均为有符号数,且余数符号总是与被除数符号相同。注意 : 对于 DIV/IDIV指令AX(DX,AX)为隐含的被除数寄存器。AL(AX) 为隐
27、含的商寄存器。AH(DX) 为隐含的余数寄存器。src 不能为立即数。对所有条件标志位均无定关于除法操作中的字长扩展问题?除法运算要求被除数字长是除数字长的两倍,若不满足则需 对被除数进行扩展,否则产生错误。?对于无符号数除法扩展,只需将AH 或 DX 清零即可。?对有符号数而言,则是符号位的扩展。可使用前面介绍过的符号扩展指令CBW 和 CWD三、逻辑运算类指令(特点:均影响 FR)P701. 与: AND2. 或: OR3. 异或:XOR4. 非: NOT5. 测试: TEST移位指令1.逻辑移位: 左移SHL右移SHR2.算术移位: 左移SAL右移SAR3. 循环移位:1).不带 CF:
28、 左移ROL右移ROR2).带 CF: 左移RCL右移RCR1、逻辑运算指令( 1)逻辑与 AND对两个操作数进行按位逻辑“与”操作。格式: AND dest, src用途:保留操作数的某几位,清零其他位。( 2)逻辑或 OR对两个操作数进行按位逻辑”或 ”操作。.格式: ORdest, src用途:对操作数的某几位置1;对两操作数进行组合。例 1:把 AL 中的非压缩BCD 码变成相应十进制数的ASCII 码。ORAL, 30H( 3)逻辑非 NOT对操作数进行按位逻辑”非 ”操作。格式: NOTmem/reg(4)逻辑异或XOR对两个操作数按位进行”异或”操作。格式: XOR dest,
29、src用途:对reg 清零 ( 自身异或 )把 reg/mem 的某几位变反 ( 与 1异或 )例 1:把 AX寄存器清零。 MOV AX,0 XOR AX,AX AND AX,0 SUB AX,AX( 5)测试指令 TEST操作与 AND 指令类似 ,但不将 ”与 ”的结果送回 ,只影响标志位。TEST 指令常用于位测试,与条件转移指令一起用。例:测试 AL 的内容是否为负数。TESTAL,80H;检查 AL 中 D7=1?JNZMINUS;是 1(负数 ),转 MINUS;否则为正数2、移位指令(1) 非循环移位指令(重点)P72算术左移指令SAL(Shift Arithmetic Lef
30、t)算术右移指令SAR(Shift Arithmetic Right)逻辑左移指令SHL(Shift Left)逻辑右移指令SHR(Shift Right)这 4 条指令的格式相同,以 SAL 为例:CL;移位位数大于1 时SALmem/reg1 ;移位位数等于 1 时? 算术移位 把操作数看做有符号数;逻辑移位 把操作数看做无符号数。? 移位位数放在CL 寄存器中,如果只移1 位 ,也可以直接写在指令中。例如:MOVCL,4SHRAL,CL;AL 中的内容右移4 位? 影响 C,P,S,Z,O 标志。.? 结果未溢出时:左移 1 位操作数 *2右移 1 位操作数 /2例:把 AL 中的数 x
31、 乘 10因为 10=8+2=2 3+2 1,所以可用移位实现乘10 操作。程序如下:MOVCL,3SALAL,1; 2xMOVAH,ALSALAL,1; 4xSALAL,1; 8xADDAL,AH; 8x+2x = 10 x四、 控制转移类指令:P80一)、无条件转移JMP1. 近转移 (段内 ) (NEAR PTR)1). 直接 (相对寻址 ):短转移 (SHORT)IP IP + disp (8位)如: JMPn长转移IP IP + disp (16位)如: JMPnn2). 间接:IP reg (16位)IP mem (16 位)如: JMPBX2.远转移(段间 )(FARPTR)1)
32、. 直接:CS = 指令中给出的段地址IP = 指令中给出的 EA如: JMP段:偏2). 间接:CS = mem+2(16 位)IP = mem(16 位)如: JMPDWORDPTR BX二)、 条件转移Jcc1. 单测试条件指令10CJC / JNAE / JBJNC / JAE / JNBZJZ/JEJNZ / JNESJSJNSPJP / JPEJNP / JPOOJOJNO2.复合测试条件指令即A B无符号数带符号数=JZJZJNZJNZ.JC / JB / JNAEJL / JNGEJA / JNBEJG / JNLEJBE / JNAJLE / JNGJNC / JAE / J
33、NBJGE / JNL三).循环控制指令1.循环转移指令LOOP(相当于:DECCXJNZn)2. 相等 (为零 )循环转移指令 LOOPE/LOOPZ3. 不相等 (不为零 )循环转移指令 LOOPNE/LOOPNZ四 ). 过程调用与返回指令1.调用指令CALL(与 JMP 一样分:段内直接、段内间接、段间直接、段间间接调用四种, 但需保护断点 )2. 返回指令 1). RET(依段内、段间不同分别恢复相应断点 )2). RET n(除象 RET 恢复断点外还应根据n 值修设 SP)五 ). 中断指令1. INT n(响应中断时,除象 CALL 保护断点外,还应保护 FR)2. INTOI
34、RET(返回时,除象 RET 恢复断点外,还应恢复F(1)LOOP格式: LOOPlabel操作: (CX)-1 CX ;若 (CX) 0,则转至 label 处执行 ;否则退出循环 ,执行 LOOP 后面的指令。LOOP 指令与下面的指令段等价:DECCXJNZlabel3、过程调用指令( 1)调用指令 CALL一般格式: CALLsub;sub 为子程序的入口4、中断指令P85(1)INT n执行类型 n 的中断服务程序,N=0 255五、串操作指令一 ).串操作指令1.串传送MOVS(字节串 MOVSB字串 MOVSW)2.串比较CMPS(字节串 CMPSB字串 CMPSW)3.串搜索S
35、CAS(字节串 SCASB字串 SCASW)4.取串LODS( 字节串 LODSB字串 LODSW)5.存串STOS(字节串 STOSB字串 STOSW)二 ).重复前缀指令.1.无条件重复REP2.相等 / 为零重复REPE / REPZ3.不相等 / 不为零重复REPNE / REPNZ串操作指令特点:1. 可用前缀使其重复操作;2. 每操作一次自动修改 SI 和 DI 内容,当 DF=0 时为增量, DF=1 为减量;3. 所有源操作数地址放在 SI 中,在 DS 段,串长 64K ;所有目标操作数地址放在 DI 中,在 ES 段,串长 64K ;4. 用重复前缀时,如果条件满足且 CX
36、 0 时重复,每重复一次 CX CX1,否则结束重复;5. 重复操作时 IP 不变,中断返回后继续操作。重复前缀重复与结束重复的条件:重复前缀重复条件结束条件REPCX 0CX=0(无条件重复 )REPE / REPZCX 0 且 ZF=1CX = 0 或 ZF=0(相等 /为零重复 )REPNE / REPNZCX 0 且 ZF=0CX = 0 或 ZF=1(不相等 /不为零重复 )使用串操作指令时注意:1. SI 源串首(末)址DI 目标串首 ( 末) 址;2. CX 串长度;3. 设DF 值;4. 选重复前缀;5. 使用条件重复前缀时, 判断结束条件 (即 是 CX=0 还是 ZF=0/
37、1 结束 )六、处理器控制指令P881. 标志位操作1). 清 CFCLC(CF=0)2). 置 CFSTC(CF=1)3). CF 取反 CMC4). 清 DFCLD(DF=0)5). 置 DFSTD(DF=1)6). 清 IFCLI(CF=0关中断 )7). 置 IFSTI(CF=1开中断 )2. 同步控制指令1). ESC2). WAIT3). LOCK3.空操作指令NOP4.暂停指令HLT.1、标志位操作(1) CF 设置指令CLC0 CFSTC1 CFCMCCF 变反(2) DF 设置指令CLD0 DF ( 串操作的指针移动方向从低到高)STD1 DF ( 串操作的指针移动方向从高到
38、低)(3) IF 设置指令CLI0 IF ( 禁止 INTR 中断 )STI1 IF (开放 INTR 中断 )1、 HLT ( halt)执行 HLT 指令后, CPU 进入暂停状态。第四章8086 汇编语言程序设计第一节 伪指令(重点)分析运算符: SEG 、 OFFSET 、 TYPE 、 LENGTH 、SIZEP97CPU 指令与伪指令之间的区别: P98(1) CPU 指令是给 CPU 的命令,在运行时由 CPU 执行,每条指令对应CPU 的一种特定的操作。而伪指令是给汇编程序的命令,在汇编过程中由汇编程序进行处理。(2) 汇编以后, 每条 CPU 指令产生一一对应的目标代码;而伪
39、指令则不产生与之相应的目标代码。1、数据定义伪指令(1)数据定义伪指令的一般格式为: 变量名 伪指令操作数 ,操作数 P99DB用来定义字节(BYTE )DW用来定义字(WORD )DD用来定义双字(DWORD )例:下面的数据项设置了多少个字节?(1) ASC_DA TADB1234(2) HEX_DATADB 1234H答案 :(1) 设置了 4 个字节(2)设置了 2 个字节( 2)操作数的类型可以是:常数或常数表达式例如: DATA_BYTEDB 10,5,10HDATA_WORDDW 100H,100,-4DATA_DWDD 2*30,0FFFBH.可以为字符串(定义字符串最好使用DB )例如: char1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 当代中国社会建设-第三讲-从发展型政府到服务型政府
- 2024年纺织行业新产品开发试题及答案
- 2024年助理广告师考试答题思路试题及答案
- 天津化学奥赛试题及答案
- 2024年提升设计表现力的策略国际商业美术设计师考试试题及答案
- 河南中职旅游试题及答案
- 刑法复试面试题及答案
- 水利事业面试题及答案
- 电工应用技术试题及答案
- 2024年设计文化传播国际商业美术设计师考试试题及答案
- 2025届鄂东南省级示范高中联盟高考英语二模试卷含答案
- 2025购销合同范本下载
- 2024年家政服务职业技能大赛家庭照护赛项决赛试理论题库1000题
- 2025年四川省成都市成华区中考二诊英语试题(含笔试答案无听力音频及原文)
- 2025劳动合同范本下载打印
- (四调)武汉市2025届高中毕业生四月调研考试 地理试卷(含答案)
- 管道试压吹扫方案
- Unit 4 Clothes 单元整体(教学设计)-2024-2025学年人教精通版(2024)英语三年级下册
- 大概念视角下的初中数学函数单元整体教学设计研究与实践
- 《建筑装饰设计收费标准》(2024年版)
- 肾上腺皮质功能减退症的护理
评论
0/150
提交评论