微机原理与接口技术第三章(2)
微机原理与接口技术(第三版)课本习题答案

第二章 8086体系结构与80x86CPU1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。
指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里?答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
微机原理与接口技术 张颖超 叶彦斐 第3章 习题答案

MULCL
MOVCX, AX
MOVAL, CL
MOVAH, 0
MULCX
13.假设DX:AX中存放一个双字的数据:
NEG DX
NEG AX
SBB DX,0
请问:
(1)上述程序段完成什么功能?
(2)设执行前,DX=0001H,AX=FFFFH,上述程序段执行后,DX、AX的值是什么?
(1)清累加器AX;
(2)清进位标志位
(3)将累加器内容乘以2(不考虑溢出)
(4)将累加器内容除以2(不考虑余数)
答:
(1) a.XORAX, AX
b.SUBAX, AX
c.ANDAX,0
d.MOVAX,0
(2) a.SUBAX, AX
b.ANDAX, AX
c.ORAX, AX
d.XORAX, AX
(7)检查BX中的第2、6、10和12位是否同时为0。
答:
(1) ANDDL, 0FCH;1111 1100B
(2)ORSI, 0E000H;1110 0000 0000 0000B
(3)ANDAX, 0FFF0H;1111 1111 1111 0000B
ORAX, 0380H; 0000 0011 1000 0000B
(1) IN AL, PORT; AL=
(2) IN AL, 40H;AX=
(3) OUTDX,AL; (DX)=
(4) OUT DX, AX; (DX)=
答:
(1)AL=22H
(2) IN AX, 40H; AX=226EH
(3) OUTDX,AL; (DX)=6EH
(4) OUT DX, AX; (DX)=226EH
微机原理与接口技术习题答案3

第3章8086CPU指令系统1.写出完成以下要求的变量定义语句:〔1〕在变量var1中保存6个字变量:4512H,4512,-1,100/3,10H,65530;〔2〕在变量var2中保存字符串:’BYTE’, ’word’, ’WORD’;〔3〕在缓冲区buf1中留出100个字节的存储空间;〔4〕在缓冲区buf2中,保存5个字节的55H,再保存10个字节的240,并将这一过程重复7次;〔5〕在变量var3中保存缓冲区buf1的长度;〔6〕在变量pointer中保存变量var1和缓冲区buf1的偏移地址。
解:var1 DW 4512H,4512,-1,100/3,10H,65530var2 DB ’BYTE’,’word’,’WORD’buf1 DB 100 DUP〔?〕buf2 DB 7 DUP〔5 DUP〔55H〕,10 DUP〔240〕〕var3 DB LENGTH buf1pointer DW var1,buf1 〔或者pointer D W OFFSET var1,OFFSET buf1〕2.设变量var1的逻辑地址为0100:0000,画出以下语句定义的变量的存储分配图:var1 DB 12,-12,20/6,4 DUP〔0,55H〕var2 DB ‘Assemble’var3 DW ‘AB’, ‘cd’, ‘E’var4 DW var2var5 DD var2解:3.指令正误判断,对正确指令写出源和目的操作数的寻址方式,对错误指令指出原因〔设VAR1, VAR2为字变量, L1为标号〕:〔1〕MOV SI,100 〔2〕MOV BX,VAR1[SI]〔3〕MOV AX, [BX] 〔4〕MOV AL, [DX]〔5〕MOV BP, AL 〔6〕MOV VAR1, VAR2〔7〕MOV CS, AX 〔8〕MOV DS, 0100H〔9〕MOV [BX][SI], 1 〔10〕MOV AX, VAR1+VAR2〔11〕ADD AX, LENGTH VAR1 〔12〕OR BL, TYPE VAR2〔13〕SUB [DI], 78H 〔14〕MOVS VAR1, VAR2〔15〕PUSH 100H 〔16〕POP CS〔17〕XCHG AX, ES 〔18〕MOV DS, CS〔19〕JMP L1+5 〔20〕DIV AX, 10〔21〕SHL BL, 2 〔22〕MOV AL, 15+23〔23〕MUL CX 〔24〕XCHG CL, [SI]〔25〕ADC CS:[0100], AH 〔26〕SBB VAR1-5,154解:〔1〕MOV SI,100 正确。
微机原理与接口技术第3章2

32
3.5.2数据定义伪指令
③ 表达式 表达式有以下几种情况: 数值表达式
【例】数据项写成数值形式的示例。 DA_BYTE DB 50H , 50 , 0caH DA_WORD DW 0a3f1H , 498dH A1 DD 12345H
不带引号的?,表示只保留内存空间,初始值未定义。 【例】数据项写成?形式的示例。 DA_B DB ? , ? ;要求分配两个字节单元 DA_W DW ? , ? ;要求分配两个字单元
;结果为2
(2)逻辑运算符
逻辑运算符主要包括SHR(右移)、SHL(左
移)、NOT(逻辑非)、AND(逻辑与)、
OR(逻辑或)、XOR(逻辑异或),它们都
是按位进行操作的 。
23
3.运算符
(3)关系运算符
关系运算符用于两个数的比较,结果 为真时为全1(8位:0FFH,16位: 0FFFFH),结果为假时为全0。关系运 算符主要包括:EQ(等于)、NE(不 等于)、LT(小于)、LE(小于或等 于)、GT(大于)、GE(大于或等于)
PURGE 符号1,符号2,…… 功能:解除已用EQU定义的符号,再重新定义。 【例】PURGE 伪指令使用示例。
NEW_PORT EQU 32 PURGE NEW_PORT NEW_PORT EQU 64
30
3.“=”伪指令
基本形式:符号名 = 数值表达式 功能:给数值表达式指定一个符号名。在汇编时,将遇 到的符号名替换为相应数值表达式的值。但与EQU不同的 是,= 伪指令可以对同一个符号作多次定义,其作用域从 定义点到重新定义之前。 【例】 “=”伪指令使用示例。 VALUE = 0 MOV AL, VALUE ; VALUE为符号常量,值为0 VALUE = 2*3+10 MOV AL, VALUE ; VALUE为符号常量,值为16
微机原理和接口技术(第三版)课本习题答案解析

第二章 8086 体系结构与80x86CPU1.8086CPU 由哪两部份构成?它们的主要功能是什么?答:8086CPU 由两部份组成:指令执行部件<EU,Execution Unit>和总线接口部件<BIU,Bus Interface Unit>。
指令执行部件〔EU 主要由算术逻辑运算单元<ALU>、标志寄存器F R、通用寄存器组和E U 控制器等4个部件组成,其主要功能是执行指令。
总线接口部件<BIU>主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或者I/O 端口读取操作数参加E U 运算或者存放运算结果等。
2.8086CPU 预取指令队列有什么好处? 8086CPU 内部的并行操作体现在哪里?答: 8086CPU 的预取指令队列由6个字节组成,按照8086CPU 的设计要求, 指令执行部件〔EU 在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在C PU 内部,EU 从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU 内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086 系统中物理地址的形成过程。
8086 系统中的物理地址最多有多少个?逻辑地址呢?答: 8086 系统中的物理地址是由20 根地址总线形成的。
8086 系统采用分段并附以地址偏移量办法形成20 位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部份构成,都是16 位二进制数。
通过一个20 位的地址加法器将这两个地址相加形成物理地址。
具体做法是16 位的段基址左移4位<相当于在段基址最低位后添4个"0">,然后与偏移地址相加获得物理地址。
微机原理与接口技术 张颖超 叶彦斐 第3章 习题解答

习题1.指出下列指令中操作数的寻址方式(1) MOV BX, 20H (2) MOV AX, [1245H](3) MOV DX, [SI] (4) MOV 100[BX], AL(5) MOV [BP][SI], AX (6) MOV [BX+100][SI], AX(7) MOV [1800H], AL (8) MOV [SI], AX答:源操作数目的操作数1 立即寻址寄存器寻址2 直接寻址寄存器寻址3 寄存器间接寻址寄存器寻址4 寄存器寻址寄存器相对寻址5 寄存器寻址基址加变址寻址6 寄存器寻址相对基址加变址寻址7 寄存器寻址直接寻址8 寄存器寻址寄存器间接寻址2. 判断下列操作数寻址方式的正确性,对正确的指出其寻址方式,错误的说明其错误原因:(1) [AX] (2) [SI+DI](3) BP (4) BH(5) DS (6) [BL+44](7) [BX+BP+32] (8) [DX](9) [CX+90] (10) [BX*4](11) BX+90H (12) SI[100H]答:(1) 错误,AX不能用于访问内存单元(2) 错误,两个变址寄存器SI和DI不能同时用于内存单元的有效地址(3) 正确,寄存器寻址方式(4) 正确,寄存器寻址方式(5) 正确,寄存器寻址方式(6) 错误,寄存器BL不能用于表示内存单元的有效地址(7) 错误,BX和BP都是基址寄存器,不能同时用于内存单元的有效地址(8) 错误,DX不能用于表示内存单元的有效地址(9) 错误,CX不能用于表示内存单元的有效地址(10)错误,16位寄存器不能乘以比例因子(11) 错误,没有这样的寻址方式(12) 错误,书写方式不对,应该写成100H[SI]3. 已知DS=2000H,ES=1000H,SS=1010H,SI=1100H,BX=0500H,BP=0200H,请指出下列源操作数字段是什么寻址方式?源操作数字段的物理地址是多少?(1) MOV AL, [2500H](2) MOV AX, [BP](3) MOV AX, ES:[BP+10](4) MOV AL, [BX+SI+20]答:(1)源操作数属于直接寻址,物理地址=DS⨯16+2500H=20000H+2500H=22500H;(2)源操作数属于寄存器间接寻址,物理地址=SS⨯16+(BP)=10100H+0200H=10300H(3)源操作数属于寄存器相对寻址,物理地址=ES⨯16+(BP)+100=10000H+0200H+0AH=1020AH(4)源操作数属于基址加变址寻址,物理地址=DS⨯16+(BX)+(SI)+20=20000H+0500H+1100H+14H=21614H4. 判断下列指令的对错,如果错误请说明原因。
《微机原理及接口技术》第三章

输入输出接口的种类繁多, 常见的有串行接口、并行 接口、USB接口等。
ABCD
常见的输入设备包括键盘、 鼠标、扫描仪等,输出设备 包括显示器、打印机等。
输入输出接口的性能指标 包括传输速度、数据格式 和兼容性等。
总线
01
总线是微机中各部件之间传输信 息的公共通道。
02
总线分为数据总线、地址总线和 控制总线,分别传输数据、地址
汇编语言程序设计的风格
良好的编程风格可以提高代码的可读性和可维护性,包括变量命名 规则、注释规则、代码布局等。
05
微机的应用与发展
微机在工业控制中的应用
实时控制
微机用于实时控制工业生产过程 中的各种参数,如温度、压力、 流量等,确保生产过程的稳定性
和安全性。
自动化生产线
微机集成于自动化生产线中,负责 监控生产设备的运行状态,实现生 产线的自动化和智能化。
故障诊断与预防
微机通过对工业设备的监测和分析, 能够及时发现潜在的故障并进行预 警,提高设备运行的可靠性。
微机在数据处理中的应用
数据采集与处理
01
微机用于采集、处理和分析大量数据,支持企业决策和业务运
营。
数据库管理
02
微机作为数据库服务器,提供数据存储、查询和管理功能,支
持企业信息系统的运行。
云计算与大数据
微机将朝着更小巧、轻便和集成化的方向发展,便于携带和使 用。
随着网络安全问题的日益突出,微机的安全性和可靠性将受到 更多关注,以确保数据和系统的安全。
THANKS
感谢观看
微机原理及接口技术第三章
• 微机原理概述 • 微机的硬件结构 • 微机的指令系统 • 微机的编程技术 • 微机的应用与发展
微机原理与接口技术 (第三版)电子工业出版社 第03章 8086的指令系统

4、寄存器间接寻址(Register indirect addressing) 内存单元的逻辑偏移地址通过寄存器 间接给出。 例: MOV SI , 61A8H MOV DX , [SI]
5、基址/变址寻址(Based/Indexed addressing) 位移量是一带符号的16位16进制数。当 使用BX或BP寄存器时,称基址寻址;使用SI 或DI寄存器时,称变址寻址。 例: MOV CX , 36H[BX] MOV -20[BP] , AL
2、MOV数据传送指令 其格式为: MOV 目的操作数,源操作数 • 目的操作数和源操作数均可采用不同的寻 址方式, • 两个操作数的类型必需一致。
二、寻址方式介绍பைடு நூலகம்
1.立即寻址(Immediate addressing) 操作数就在指令中,紧跟在操作码后面, 作为指令一部分存放在内存的代码段中,这 种操作数称为立即数。 例: MOV AX , 34EAH MOV BL , 20H
3)、段间直接转移 JMP far PTR 目标地址 4)、段间间接转移 JMP WORD PTR[BX][SI]
2、条件转移指令
1)、单条件转移指令 ① JC ② JNC ③ JE/JZ ④ JNE/JNZ ⑤ JS ⑥ JNS ⑦ JO ⑧ JNO ⑨ JP/JPE ⑩ JNP/JPO ;CF标志为1,则转移 ;CF标志为0,则转移 ;ZF标志为1,则转移 ;ZF标志为0,则转移 ;SF标志为1,则转移 ;SF标志为0,则转移 ;OF标志为1,则转移 ;OF标志为0,则转移 ;PF标志为1,则转移 ;PF标志为0,则转移
3、目标地址传送指令
这类指令有: 1)LEA 有效地址传送到寄存器 2)LDS 装入一个新的物理地址 3)LES 装入一个新的物理地址
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章:1. 逻辑运算指令
双 操 作 数 逻 辑 指 令 AND 、 OR 、 XOR 和 TEST设置CF=OF=0,根据结果设置SF、 ZF和PF状态,而对AF未定义;它们的操作 数组合与ADD、SUB等一样:
运算指令助记符 reg, imm/reg/mem
运算指令助记符 mem, imm/reg
直接寻址方式
用标号表达
指令代码中提供目的逻辑地址,转移后的CS和 IP值直接来自指令操作码后的目的地址操作数
间接寻址方式
用寄存器或存储器操作数表达
指令代码中指示寄存器或存储单元,目的地址 从寄存器或存储单元中间接获得
第2章:目标地址的寻址范围:段内寻址
段内转移——近转移(near)
在 当 前 代 码 段 64KB 范 围 内 转 移 ( ±32KB范围) 不需要更改CS段地址,只要改变IP偏 移地址
⑴ ⑵ ⑶ ⑷ 段内转移、相对寻址 段内转移、间接寻址 段间转移、直接寻址 段间转移、间接寻址
第2章:无条件转移指令JMP(jump)
JMP label
;IP←IP+位移量
;段内转移
演示
JMP r16/m16
;IP←r16/m16
;间接寻址、段内转移
演示 演示
JMP far ptr label JMP far ptr mem
Jcc指令实际虽然只有16条,但却有30个助记符 采用多个助记符,目的是为了方便记忆和使用
第2章:(1) 判断单个标志位状态
JMP/Jcc/LOOP/JCXZ CALL/RET INT n/IRET 常用系统功能调用 控制转移类指令通过改变IP(和CS)值, 实现程序执行顺序的改变
第2章:目标地址的寻址方式
相对寻址方式
用标号表达
指令代码中提供目的地址相对于当前IP的位移 量,转移到的目的地址(转移后的IP值)就是 当前IP值加上位移量
01000100
AND指令主要用于:使操作数的若干位保持不变,另 外的位清0,维持不变的位跟“1”相“与”,而清0 的位跟“0”相“与”。
第3章: (2)逻辑或指令OR
对两个操作数执行逻辑或运算,结果送目的操作数 指令格式:OR dest,src ;dest←dest∨src
只要相“或”的两位 有一位是1,结果就是1; 否则,结果为0
TEST指令主要来测试指定位是1还是0。 TEST AL,80H TEST [BX], 01H
第3章:2. 移位指令
将操作数移动一位或多位,分成逻辑移位 和算术移位,分别具有左移或右移操作 移位指令的第一个操作数是指定的被移位 的操作数,可以是寄存器或存储单元;后 一个操作数表示移位位数:
该操作数为1,表示移动一位 该 操 作 数 为 CL , CL 寄 存 器 值 表 示 移 位 位 数 (移位位数大于1只能用CL表示)
第3章:2. 移位指令
逻辑移位指令用于无符号数的移位,左移 时,最低位补0;右移时,最高位补0。算 术逻辑指令用于对带符号数的移位,左移 时,最低位补0;右移时,最高位参加移位, 但保持不变。CF中总保留最后移出的一位 的状态。
第3章:2. 移位指令
SHL和SAL的功能完全一样,因为对一个 无符号数乘以2和对一个带符号数乘以2 没有什么区别,每移一次,最低位补0, 最高位移入CF。 SHR和SAR的功能不同。SHR执行时最高 位补0,因为它是对无符号数移位 ,而 SAR执行时最高位保持不变,因为它是 对带符号数。
按照移入的位设置进位标志CF,根据移位 后的结果影响SF、ZF、PF
第3章:2. 移位指令
指令格式:SAL src,count ;算术左移 SAR src,count ;算术右移 SHL src,count ;逻辑左移 SHR src,count ;逻辑右移
第3章: (1)逻辑左移指令SHL
SHL reg/mem,1/CL ;reg/mem左移1或CL位 ;最低位补0,最高位进入CF
第3章 3.4 串处理指令
串操作指令就是用一条指令实现对一串字符或数据 的操作。它是8086唯一的一类源操作数和目的操 作数都在存储单元的指令。 串操作指令执行时,遵循以下的隐含约定: 地址:总是用DS:SI指向源串首址,源串允许使 用段超越前缀来修改段地址;ES:DI指向目的串 首址,但目的串不允许使用段超越前缀修改ES。 处理单位:可以对字节串进行操作,也可以对字 串进行操作。 处理方向:与方向标志DF有关。DF=0,表示内 存地址由低到高,DF=1,表示内存地址由高到 低。
第3章:3. 循环移位指令
循环移位指令类似移位指令,但要将从一 端移出的位返回到另一端形成循环。分为:
ROL reg/mem,1/CL ROR reg/mem,1/CL RCL reg/mem,1/CL RCR reg/mem,1/CL ;不带进位循环左移 ;不带进位循环右移 ;带进位循环左移 ;带进位循环右移
第3章: 例题(数据移位)
MOV DX,6075H SHL DX,1
;CF=0,SF=1、ZF=0、PF=0
SAR DX,1
;CF=0,SF=1、ZF=0、PF=0
SHR DX,1
;CF=1,SF=0、ZF=0、PF=1 MOV CL,4 ;CL=4,标志不变
SAR DX,CL
;CF=1,SF=0、ZF=0、PF=1
演示
第3章: (2)逻辑右移指令SHR
SHR reg/mem,1/CL 演示 ;reg/mem右移1/CL位 ;最高位补0,最低位进入CF
第3章: (3)算术左移指令SAL
SAL reg/mem,1/CL ;与SHL是同一条指令
演示
第3章: (4)算术右移指令SAR
SAR reg/mem,1/CL 演示 ;reg/mem右移1/CL位 ;最高位不变,最低位进入CF
第3章
第3章:3.3 逻辑指令与移位类指令
逻辑指令以二进制位为基本单位进行数据的 操作 当需要对字节或字数据中的各个二进制位操 作时,可以考虑采用位操作类指令 注意这些指令对标志位的影响 1. 逻辑运算指令 AND OR XOR NOT TEST 2. 移位指令 SHL SHR SAR 3. 循环移位指令 ROL ROR RCL RCR
实际编程时,汇编程序会根据目标地址的 属性,自动处理成短转移、近转移或远转移 程序员可用操作符short、near ptr 或far ptr 强制成为需要的转移类型
代 码 段
代 码 段
第2章:1. 无条件转移指令
JMP label
;程序转向label标号指定的地址
只要执行无条件转移指令JMP,就使来自序转到指 定的目标地址,从目标地址处开始执行指令 操作数label是要转移到的目标地址(目的地址、 转移地址) JMP指令分成4种类型:
第3章 5. 存字符串指令STOSB/STOSW
指令格式:STOSB/STOSW 执行的操作:把AL或AX中的数据存到ES段 DI寄存器所指的内存单元,并且自动修改 地址指针。加上前缀REP后,用这两条指 令可以使一串内存单元中填满相同的数。
第2章:3.5 控制转移类指令
控制转移类指令用于实现分支、循环、 过程等程序结构,是仅次于传送指令 的常用指令 重点掌握:
;段间转移、直接寻址
演示
;IP←偏移地址,CS←段地址
;段间转移,间接寻址 演示 ;IP←[mem],CS←[mem+2]
第2章:2. 条件转移指令
条件转移指令Jcc根据指定的条件确定程序 是否发生转移。其通用格式为:
Jcc label
;条件满足,发生转移 ;IP←IP+8位位移量; ;否则,顺序执行
代 码 段
段内转移——短转移(short)
转移范围可以用一个字节表达,在段 内-128~+127范围的转移
代 码 段
第2章:目标地址的寻址范围:段间寻址
段间转移——远转移(far) 从当前代码段跳转到另一个代码段, 可以在1MB范围 需要更改CS段地址和IP偏移地址 目标地址必须用一个32位数表达,叫 做32位远指针,它就是逻辑地址
OR指令主要用于:使操作数的若干位保持不变,另 外的位置1,维持不变的位跟“0”相“或”,而置 1的位跟“1”相“或”。
第3章: (3)逻辑异或指令XOR
对两个操作数执行逻辑异或运算,结果送目的操作数 指令格式:XOR dest,src ;dest←dest⊕src
只有相“异或”的两 位不相同,结果才是1; 否则,结果为0
格式: MOVSB/MOVSW 执行的操作:将位于DS段的、由SI所指出 的存储单元的字节或字传送到位于ES段、 由DI所指的存储单元中,再修改SI和DI, 从而指向下一个元素。 两条指令前面通常加重复前缀REP。
MOV SI,1000H MOV DI,2000H MOV CX,100 CLD REP MOVSB :
第3章 3.4 串处理指令
重复操作:在串操作指令前加重复前缀(REP、 REPE/REPZ、REPNE/REPNZ)时,可使串操作 重复进行到结束。 重复前缀:REP 无条件重复;REPE/REPZ 相等 /结果为零则重复;REPNE/REPNZ 不相等/结果 非零则重复。
第3章 1. 字符串传送指令MOVSB/MOVSW
第3章: (5)测试指令TEST
TEST指令和AND指令执行同样的操作,对两 个操作数进行逻辑“与”操作,但TEST指 令不回送操作结果,仅仅影响标志位,指令 执行后,两个操作数都不变。
指令格式:TEST dst,src 指令格式:AND dest,src ;dst∧ src ;dest←dest∧src
演示
演示 演示 演示
循环移位指令的操作数形式与移位指令相 同,按指令功能设置进位标志CF,但不影 响SF、ZF、PF、AF标志。
总结 一 、 逻 辑 运 算 指 令 ( AND 、 OR 、 NOT 、 TEST)及其用途 二、移位指令(SAL、SHL、SAR、SHR) 及 循 环 移 位 指 令 ( ROL 、 ROR 、 RCL 、 RCR)