《汇编语言程序设计》第十章串操作指令与程序设计.
例10-4 REP MOVSB串操作指令应用实例
程序说明:与例 10-1 、 10-2 、 10-3 比较,本例更简单。 MOVSB ,再加上一个重复前缀,那么整个循环的重复部 分、修改部分、控制部分用一条指令即可: REP MOVSB。
南开大学 朱耀庭
2. 串操作指令概述
南开大学 朱耀庭
2. 串操作指令概述
无论是串传送指令 MOVS,串比较指令 CMPS,还是串搜 索指令 SCANS ,每执行一次串操作指令,其源串指针 SI 、 目标串指针DI都自动修改指向下一个操作的字节或字。 如果是字节操作,其增量为正负 1;如果是字操作则增量 为正负 2。增量为正,表示下一次操作指向高地址,称作 正向串操作,由标志寄存器的 DF=0 决定,可以通过指令 CLD 置 DF=0 ;增量为负,表示下一次操作指向低地址, 称作负向串操作,由标志寄存器的 DF=1 决定,可以通过 指令STD置DF=1。
例10-2 LODSB和STOSB串操作指令应用实例
程序说明:试比较例10-1 与例10-2黑体字部分的不 同
www.ຫໍສະໝຸດ
南开大学 朱耀庭
2. 串操作指令概述
例10-3 MOVSB串操作指令应用实例 题目:功能同例10-1 设计思路:S1作为源串,S2作为目标串,用MOVSB实现 串数据传送
南开大学 朱耀庭
2. 串操作指令概述
利用这些指令最多可以处理64K字节长的字符串。 字符串指令可以对字符串的某个元素(字节或字)进行传送、 比较、搜索,以及将字符串元素取至累加器(AL、AX或 EAX)中和将累加器(AL、AX或EAX)中的值存入字符串(存 储器字节、字或双字)。 字符串指令可以有一个源操作数(源串)、一个目的操作数 (目标串)或二者均有。 源串是指由DS:SI指向的字节或字符串 目标串是指由ES:DI指向的字节或字符串
例10-3 MOVSB串操作指令应用实例
程序说明:注意本例与例10-1 与例10-2黑体字部分 的区别
南开大学 朱耀庭
2. 串操作指令概述
例10-4 REP MOVSB串操作指令应用实例。 题目:功能同例10-1。 设计思路:S1作为源串,S2作为目标串,用REP MOVSB实现串数据传送。
例10-1中的如下程序段,可以用串操作中的3种方法来替 代。 L: MOV AL,[SI] MOV ES:[DI],AL INC SI INC DI LOOP L ●方法一: L: LODSB STOSB LOOP L
南开大学 朱耀庭
2. 串操作指令概述
●方法二: L: MOVSB LOOP L ●方法三: REP MOVSB 由此可见,REP MOVSB一条指令就可以实现原来的一段 循环程序。这就是串操作的优点,也是指令系统的一种改 进,即循环程序以指令化的形式出现。 可见硬件重复比通过指令序列来实现对字节串或字串的循 环处理要简便许多。
程序说明:以上程序如果用字符串传送指令 LODSB 和STOSB来实现,程序可以修改为例10-2所示
南开大学 朱耀庭
2. 串操作指令概述
例10-2 LODSB和STOSB串操作指令应用实例 题目:功能同例10-1 设计思路:S1作为源串,S2作为目标串,用串操作 LODSB和STOSB实现串数据传送。
汇编语言程序设计
-------朱耀庭 ---------朱耀庭
第10章 串操作指令与程序设计
在程序设计过程中,往往需要对成片连续单元的字节或字 数据进行移动和比较,以及从中搜索特定的字节或字等操 作。 80X86提供了满足这一要求的串操作指令 80X86汇编语言中称存放在内存储器中的成片连续存储的 数据为串,如果数据类型是字节则称作字节字符串,如果 数据类型是字则称作字字符串,在不引起混淆的情况下统 称为字符串。 本章将介绍有关串的定义、串操作指令,以及串操作的应 用等内容。
南开大学 朱耀庭
第10章 串操作指令与程序设计
10.1 字符串操作综述
10.2 字符串操作指令
10.3 串操作指令的重复前缀
南开大学 朱耀庭
10.1 字符串操作综述
1
串的定义
2
串操作指令概述
南开大学 朱耀庭
1. 串的定义
字符串是指存储器中连续存储的字节或字数据序列 S1 DB ’HELLO WORLD!′ S2 DB ’5’, ’6’, ’7’, ’8′ S3 DW 9, 5, 2, 7 S4 DB 100 DUP (0) S5 DW 50 DUP (?) 以上变量定义的都是串 其中S1、S2和S4是用DB定义的字节串,S3和S5是用DW 定义的字串。
南开大学 朱耀庭
2. 串操作指令概述
源串是在成片移动时的数据源 目标串是在成片移动时的目标,即将源串中的字节或字逐 个移动到目标串对应的位置。 串比较是指源串与目标串的逐个元素的比较。 串搜索是指在目标串中搜索与指定的字节或字是否有匹配 的字节或字,被搜索的字节要求存放在 AL 中,而被搜索 的字则要求存放在AX中。
南开大学 朱耀庭
2. 串操作指令概述
下面通过几个实例说明串操作指令与一般MOV指令实现数 据传送的区别: 例10-1 MOV指令应用实例 题目:将串S1从数据段传送到辅助数据段中的串S2中去。 设计思路:用MOV指令实现数据移动,DS:SI指向S1源串, ES:DI指向S2目标串,每移动一次数据,SI和DI分别加1, 用LOOP指令实现所有数据的传送。 例10-1 MOV指令应用实例
南开大学 朱耀庭
2. 串操作指令概述
字符串操作有5种基本的操作指令,称为基本字符串指令。 字符串指令是对字节串或字串进行操作,每次处理一个元 素(字节或字)。 MOVS CMPS SCAS LODS STOS 存字节或字的字符串指令
汇编语言程序设计经典课件
汇编语言程序设计经典课件1. 引言汇编语言是一种低级程序设计语言,通过使用特定的指令和寄存器对计算机硬件进行直接操作。
本课件旨在帮助读者理解并掌握汇编语言程序设计的基本概念和技巧。
2. 基本概念在开始学习汇编语言之前,有一些基本概念需要了解:2.1 计算机的工作原理•冯·诺依曼体系结构•控制器和算术逻辑单元(ALU) •存储器和寄存器2.2 汇编语言的基本原理•指令集和操作码•寄存器和内存•标志寄存器和条件代码在汇编语言中,数据的表示方式有以下几种:3.1 二进制表示法•正整数、负整数和零•浮点数3.2 十进制表示法•常见数据类型3.3 其他表示法•八进制、十六进制和ASCII码表示法汇编语言包含各种指令,用于执行不同的操作。
以下是一些常见的基本指令:4.1 数据传送指令•MOV指令•XCHG指令4.2 算术和逻辑指令•ADD指令•SUB指令•AND指令•OR指令•XOR指令4.3 跳转指令•JMP指令•JZ指令•JC指令5. 汇编语言的程序结构一个汇编语言程序通常包含以下几个部分:5.1 程序的入口和出口•程序的开始和结束•程序的返回指令5.2 子程序•什么是子程序•如何调用和返回子程序5.3 中断处理程序•什么是中断•如何编写中断处理程序6. 汇编语言的调试和优化6.1 调试工具•机器级调试工具•模拟器和调试器6.2 优化技巧•寄存器的使用•循环优化•数据对齐7. 汇编语言的应用领域汇编语言在很多领域都有广泛的应用,包括但不限于:7.1 嵌入式系统7.2 驱动程序开发7.3 游戏开发7.4 系统安全8. 结语汇编语言是一种能直接与计算机硬件交互的低级语言,它对于理解计算机的工作原理和进行底层编程非常重要。
本课件希望能够为读者提供一个系统而全面的汇编语言程序设计入门指南,并帮助读者在实践中灵活运用所学知识。
汇编语言程序设计基本命令
汇编语言程序设计基本命令汇编语言是一种底层的编程语言,直接操作计算机硬件,其指令由一系列的机器码组成。
在汇编语言程序设计中,我们需要了解一些基本的命令,包括数据传送指令、算术运算指令、控制转移指令等,下面就对这些命令做一详细的介绍。
1.数据传送指令在汇编语言中,数据传送指令用来将数据从一个位置复制到另一个位置,常用的数据传送指令有MOV、LEA和XCHG。
-MOV指令:将源操作数的值复制给目标操作数,格式为MOV目标操作数,源操作数。
-LEA指令:用来将有效地址(即内存中的地址)传送给寄存器,格式为LEA目标操作数,源操作数。
-XCHG指令:交换两个操作数的值,格式为XCHG目标操作数,源操作数。
2.算术运算指令在汇编语言中,我们可以使用一系列算术运算指令来对数据进行运算和处理,常见的算术运算指令有ADD、SUB、MUL和DIV等。
-ADD指令:用于进行加法运算,格式为ADD目标操作数,源操作数。
-SUB指令:用于进行减法运算,格式为SUB目标操作数,源操作数。
-MUL指令:用于进行乘法运算,格式为MUL目标操作数,源操作数。
-DIV指令:用于进行除法运算,格式为DIV目标操作数,源操作数。
控制转移指令用于改变程序的执行流程,常见的控制转移指令有JMP、JZ、JE、JNE等。
-JMP指令:用于无条件地跳转到目标地址继续执行,格式为JMP目标地址。
-JZ指令:用于当结果为零时跳转到目标地址继续执行,格式为JZ目标地址。
-JE指令:用于当结果相等时跳转到目标地址继续执行,格式为JE目标地址。
-JNE指令:用于当结果不相等时跳转到目标地址继续执行,格式为JNE目标地址。
4.逻辑运算指令逻辑运算指令用于对数据进行逻辑运算,常见的逻辑运算指令有AND、OR、XOR和NOT等。
-AND指令:对两个操作数的对应位进行与运算,格式为AND目标操作数,源操作数。
-OR指令:对两个操作数的对应位进行或运算,格式为OR目标操作数,源操作数。
串操作指令
运用MOVSB指令
DATA SEGMENT NUM1 DB 50 DUP(0A0H) NUM2 DB 50 DUP(0) COUNT EQU LENGTH NUM2 ENDS
DATA CODE
SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET NUM1 MOV DI,OFFSET NUM2 MOV CX,COUNT NEXT: MOVSB LOOP NEXT MOV AH,4CH INT 21H CODE ENDS END START
例2:同学课后应用以上指令编辑传送100字的程序
DATA CODE
SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET NUM1 MOV DI,OFFSET NUM2 MOV CX,COUNT NEXT: MOVS BYTE PTR[DI],BYTE PTR[SI] LOOP NEXT MOV AH,4CH INT 21H CODE ENDS END START
START: MOV AX,DATA NEXT: MOV AL,[DI] MOV DS,AX MOV [SI],AL MOV DI,OFFSET NUM1 INC SI MOV SI,OFFSET NUM2 INC DI MOV CX,50 LOOP NEXT
运用MOVS指令
DATA SEGMENT NUM1 DB 50 DUP(0A0H) NUM2 DB 50 DUP(0) COUNT EQU LENGTH NUM2 ENDS
基 本 串 操 作
汇编串操作指令的使用
串操作指令的使用一、串操作指令概述所谓串就是内存中一段地址相连的字节或字。
串操作就是对串中各项数据进行某种运算,也叫数据块操作。
8086/8088有5种基本串操作:⏹MOVS(Move string)串传送指令⏹CMPS(Compare string)串比较指令⏹SCAS(Scan string)串扫描指令⏹LODS(Load from string)从串取指令⏹STOS (Store in to string)存入串指令可以使用3种重复前缀:⏹REP(Repeat)无条件重复⏹REPE/REPZ(Repeat while equal/zero)相等/为零则重复⏹REPNE/REPNZ(Repeat while not equal/not zero)不相等/不为零则重复二、串操作指令详解★MOVS 串传送格式:MOVS dest,srcMOVSB(字节传送)MOVSW(字传送)功能:把DS:SI所指向的内存单元中的一个字或字节的内容取出复制到ES:DI所指向的字或字节内存单元中。
同时SI±1、DI±1或SI±2、DI±2,方向标志DF=1进行加运算,DF=0进行减运算;字节传送加减1,字传送加减2。
说明:☆单条MOV指令不能完成存储单元之间的数据传送;MOVS指令就是为解决内存储单元之间数据传送而设置的。
☆所涉及到的源内存单元和目的内存单元的地址分别存放在DS:SI和ES:DI中。
✧MOVS串传送指令不影响标志寄存器。
★LODS 从串取指令格式:LODS srcLODSB (取字节)LODSW(取字)功能:把DS:SI所指向的内存单元中的字或字节内容传送到AX或AL寄存器中。
同时SI 加减1或2;方向标志DF=1进行加运算,DF=0进行减运算;字节传送加减1,字传送加减2。
说明:☆LODS指令可用于取出指定的内存单元中的内容。
✧默认目的寄存器为AX或AL寄存器。
汇编语言程序设计教程
汇编语言程序设计教程汇编语言是一种基于机器指令的低级语言,常用于嵌入式系统和底层编程。
学习汇编语言可以帮助理解计算机底层工作原理,并提高编程效率。
本篇文章将介绍汇编语言程序设计的基础知识和主要步骤。
一、汇编语言的特点汇编语言是一种直接操作计算机硬件的语言,其特点如下:1.与机器语言一一对应:每一条汇编指令对应一条机器指令,更接近计算机底层的执行方式。
2.语法简单:汇编语言的语法相对简单,只包含一些基本指令和寻址方式。
3.高度灵活:汇编语言可以直接访问计算机硬件和寄存器,灵活控制程序的执行流程。
4.高效性能:由于直接操作底层硬件,汇编语言编写的程序通常具有较高的执行效率。
二、汇编语言的基本组成1.汇编指令:汇编指令是汇编语言最基本的语句单元,用于实现具体的操作和控制流程。
2.伪指令:伪指令是用来对程序进行宏汇编定义和控制汇编程序的运行方式的命令。
3.伪操作码:伪操作码用来定义数据和存储空间,如定义变量和常量。
4.标号和标识符:标号用于标记程序中的位置,标识符用于定义变量和常量的名称。
5.注释:注释用于给程序增加解释说明,提高程序的可读性。
三、汇编语言程序设计的步骤1.确定程序的目标和功能:明确程序的需求和目标,确定所需的处理过程和数据结构。
2.设计算法:使用伪代码或流程图的形式描述程序的算法逻辑,包括输入、处理和输出过程。
3.选择合适的汇编指令和寻址方式:根据程序需求,选择适当的指令和寻址方式,确保程序能够正确实现算法逻辑。
4.编写程序源代码:根据算法和选定的指令,编写程序源代码,包括声明、定义变量、初始化和实现算法的具体指令。
5.进行编译和调试:使用汇编编译器将源代码转换为机器码,然后进行程序的调试和测试,确保程序能够正常运行。
6.优化性能和可读性:根据程序的需求和实际运行结果,进行性能优化和代码可读性的提高,提高程序的执行效率和可维护性。
四、汇编语言程序设计的示例下面是一个简单的汇编语言程序示例,实现了计算两个数之和的功能:```section .datanumber1 db 10 ;定义变量number1,并初始化为10number2 db 20 ;定义变量number2,并初始化为20sum db ? ;定义变量sum,用于存储两个数之和section .textglobal _start_start:;将number1和number2的值相加,并保存到sum中mov al, [number1]add al, [number2]mov [sum], al;结束程序mov eax, 1 ;1代表退出程序int 0x80 ;调用系统中断```以上示例通过使用mov和add指令来实现变量的赋值和求和操作。
汇编语言程序设计
汇编语言程序设计汇编语言是一种底层的计算机语言,它直接与计算机硬件交互,具有灵活性和高效性的特点。
在计算机科学领域,汇编语言程序设计是一门重要的学科。
本文将分析汇编语言程序设计的基本原理和应用,介绍其在实际项目中的应用以及相关的开发工具。
一、汇编语言程序设计的基本原理汇编语言是一种符号化的机器语言,通过使用助记符和标号来描述指令和数据。
它与计算机硬件非常接近,可以直接操作寄存器、内存和其他硬件资源。
汇编语言程序设计的基本原理包括指令的组成、寄存器的使用、内存的管理和流程控制等方面。
1.1 指令的组成汇编语言的指令由操作码和操作数组成。
操作码是指令的功能代码,用于定义指令要执行的操作。
操作数是指令的操作对象,可以是寄存器、内存地址或立即数等。
汇编语言提供了丰富的指令集,包括算术运算、逻辑运算、数据传输、控制转移等多种类型的指令。
1.2 寄存器的使用寄存器是计算机内部用于存储临时数据的高速存储器。
汇编语言通过寄存器来进行数据的传输和运算。
不同的计算机体系结构提供了不同数量和类型的寄存器。
常见的寄存器包括通用寄存器、指令指针寄存器和程序状态寄存器等。
1.3 内存的管理内存是计算机用于存储程序和数据的主要设备。
汇编语言可以通过直接指定内存地址来读取和写入数据。
内存管理的主要任务包括地址转换、数据的加载和存储、内存保护等。
汇编语言通过使用段寄存器和偏移地址的方式来管理内存。
1.4 流程控制汇编语言支持多种流程控制指令,包括条件跳转、无条件跳转、循环和子程序调用等。
通过这些指令,程序可以根据运行结果来选择不同的执行路径,实现复杂的逻辑功能。
流程控制是程序设计中的重要部分,对于优化程序性能和实现复杂算法非常关键。
二、汇编语言程序设计的应用汇编语言程序设计广泛应用于系统级编程、设备驱动、数字信号处理等领域。
以下是汇编语言程序设计在实际项目中的常见应用。
2.1 操作系统开发操作系统是计算机硬件与用户之间的接口,负责管理硬件资源和为应用程序提供服务。
汇编语言程序设计
《汇编语言程序设计》课程教学大纲学时:32 学分:2理论学时:24 实验学时:8面向专业:电科、电信、通信课程代码:B2700009先开课程:C语言程序设计课程性质:必修执笔人:王艳春审定人:陈龙猛、张金政第一部分:理论教学部分一、说明1、课程的性质、地位和任务本课程属于专业基础课,是电科、电信和通信专业学生必修的核心课程之一,是进一步学习微机原理、操作系统等课程的基础。
掌握它有助于提高学生对计算机系统的设计、研究、开发和应用能力。
汇编语言是一种面向机器、实践性很强的程序设计语言,必须结合一种实际的计算机来组织教学。
因此,本课程选择最广泛使用的IBM PC作为具体的机型来介绍。
通过课堂教学和上机实践,培养学生用汇编语言进行编程的思路、方法,养成良好的程序设计习惯,并了解底层I/O 驱动软件的编程方法,熟悉源程序汇编、链接和调试运行的步骤和方法,掌握dos、BIOS功能的调用方法及使用debug工具的调试手段,为后续课的学习打下扎实的基础。
2、课程教学和教改基本要求课程的目的与教学基本要求:本课程主要介绍汇编语言和宏汇编的基本概念,80X86CPU的指令系统和寻址方式;介绍汇编语言程序格式、伪操作和上机全过程。
通过实际例子,详细叙述顺序、分支、循环、子程序等基本程序结构以及程序设计的基本方法和技巧。
学习这门课程,应达到以下几个要求:①掌握汇编语言的基本理论知识和有关概念;掌握用汇编语言编写源程序的基本原则、方法和技巧;②具有阅读,分析汇编语言程序的能力;③通过上机实践,能够熟练地掌握汇编语言程序的编辑、汇编、连接、运行过程及debug工具的调试手段。
课堂授课采用多媒体教学,采用由浅入深、循序渐进学习步骤,主要讲解设计思想、实现技巧,通过提问题引导学生思考,提高学生的学习兴趣,从而加深学生对理论课的理解,提高学生的动手能力。
二、教学内容与课时分配第一章基础知识(2学时)1.1 机器语言及汇编语言的产生1.2 汇编语言的组成1.3 存储器1.4 指令和数据1.5 存储单元及CPU对存储器的读写1.6 三大总线1.7 主板、接口卡及各类存储器芯片1.8 内存地址空间教学的重点与难点:指令和数据在内存或磁盘上没有区别;内存地址空间。
汇编语言设计-串操作
SI←源串地址指针 DI←目串地址指针 CX←计数器初值 DF←0 增址方向
串比较 [SI]-[DI]
相同?
Y
N
BX←偏移地址
AL←[BX]
(CX)←(CX)-1
CX=0? ≠0 =0
停机
BX←0
程序见P87∽88
3、串扫描(搜索)指令SCASB/SCASW
SCASB ;(AL)-[DI] , (DI)←(DI) 1
SCASW ;(AX)-[DI] , (DI)←(DI) 2
功能:把AL(或AX)中的内容与DI所指的附ES中一个 字节(或字)进行比较 , 结果不回送 , 只影响状态标志 , 并 在比较之后,自动修改地址指针DI。
注意: ①、欲搜索的字符或数据(称关键字)必须存放在AL或 AX寄存器中。
②、串元素的地址指针使用DI寄存器,且通常在附加段 ES中。
Y DX←求负数和
何修改?②去掉MOV BX,AX 指令可行?
5、串存储(存字符串)指令STOSB/STOSW STOSB ;B [DI]←(AL) , (DI)←(DI) 1
STOSW ;W [DI]←(AX) , (DI)←(DI) 2
功能:将AL或AX中的数据存到ES段由DI所指定的内存
CLD ;置方向标志,即DF=0,增址传送
LEA SI,SOURCE ;SI指向源串 DEC CX
LEA DI,DEST ;DI指向目的串 JNZ AGAIN
MOV CX , 64H ;设置计数器初值 HLT AGAIN:MOVSB ;串传送
程序中的MOVSB指令 其一条指令功能相当
于右边四条指令功能
㈠、基本的字符串操作指令
1、字符串传送指令MOVSB/MOVSW 功能:将位于DS段的由SI所指向的存储单元中的字节或 字传送到位于ES段由DI所指向的存储单元中,并修改SI和 DI,以指向字符串的下一个元素。 例:MOVSB ;字节串传送 , SI和DI的内容1
汇编语言-串操作
DIV CL XCHG AH, AL PUSH AX MOV DL, AH OR DL, 30H MOV AH, 2 INT 21H POP AX MOV DL, AL OR DL, 30H INT 21H
MOV AH, 4CH INT 21H CODE ENDS END START
3、 实验环境
计算机
4、 实验步骤及运行结果
编写程序完后连接运行,运行所得结果如下:
输入为ABCDefg,有三个小写字母,所以输出为3.
5、 总结
通过本次上机实验,熟悉了串操作指令的功能与应 用,掌握了串操作指令的寻址方式及使用方法,编写常用 的字符串处理程序。在做这个实验时,程序出了一点小小 的问题,但通过查找课本和询问同学都基本得到了解决, 运行结果也达到了实验的要求。
张旭玲
3 程序的调试与纠错(循 环语句)
张旭玲
4 DOS功能调用
张旭玲
5 子程序
张旭玲
6 串操作
张旭玲
7
8
9
10
11
12
福建农林大学计算机与信息学院实验报告
系:
计算机
级: 2009
姓名: 学号:
实验时间: 11.12.6
成绩:
专业:
计算机科学与技术
实验室号 田507 指导教师签字:
计算机号
年 73
DONE: MOV DL, 0DH MOV AH, 2 INT 21H MOV DL, 0AH INT 21H LEA SI, BUF MOV CH, 0 MOV BL, 0 CLD
NEXT1: LODSB CMP AL, 61H JB NEXT2 CMP AL, 7AH JA NEXT1 INC BL
汇编语言——串操作指令
MOVS指令可以实现把内存中的一个数据,不经过寄存 器的过渡由一处复制到另一处。这一点是MOV指令做不到 的。MOVS指令与循环控制指令配合,可以完成数据块的复 制。被复制的数据串称为源串,复制到的目的地称为目标 串。如果源串与目标串所占据的内存是完全分离的,数据 传递可以按由串首至串尾的次序进行,也可以按相反的方 向进行。但是,当两者占据的内存区域有部分重叠时,需 要注意用DF控制方向,当源串首地址小于目标串首地址时, 应由尾至首进行传送,源串首址大于目标串首址时,则由 首至尾传送。
(2)STOSW进行字型串操作,把AX的值送往内存中由 ES:DI所确定的内存中。当DF=0时,令DI←DI+2,当DF= 1时,令DI←DI-2。
STOS指令主要用于把一段连续的存储区域以AL或AX中 的值填充,特别的是,存储区的段地址必须放在附加段寄存 器ES中。STOS与LODS指令配合,还可以从一个串中取出数 据,有选择地存到另一个串中。
8088提供有两条专用指令设置DF,分别是CLD和STD 指令。
【指令格式】CLD
【功能】把标志位DF清0。
【指令格式】STD
【功能】把标志位DF置1。
7.2.2 串操作指令
8088指令系统中共设计有5条串操作指令,分别用于完 成从串中取出数据、往串中2.2.1 LODS指令──从串中取出数据
lab2:
INC [countp]
JMP lab4
lab3:
INC [countn]
lab4:
LOOP lab1
