本 科 实 验 报 告 实验名称:实验三 字符串操作实验 课程名称: 课程设计Ⅰ(CPU 与汇编)(实验) 实验时间: 第 5-10 周周五下午 任课教师: 聂青 实验地点: 10-102 实验教师: 苏京霞 实验类型: ☑ 原理验证 □ 综合设计 □ 自主创新 学生姓名: 罗逸雨 学号/班级: 1120141208 05211401 组 号: 3 学 院: 信息与电子学院 同组搭档: 专 业: 通信工程 成 绩: 一、实验目的 1) 熟悉串操作指令的功能与应用; 2) 掌握串操作指令的寻址方式及使用方法,编写常用的字符串处理程序; 3) 了解汇编语言字符串处理基本流程; 二、实验环境与原理 1
实验软硬件环境 1) 硬件环境:惠普 64 位一体化计算机及局域网; 2) 软件环境:Windows 8,红蜘蛛管理系统,MASM for Windows
实验原理 1)字符串操作流程 SI 寄存器保存源串首地址; DI 寄存器保存目的串首地址; CX 寄存器保存字符串长度; CLD 或 STD 指令设置字符串处理方向; 当 CLD 指令使 DF=0 在执行串处理指令时可使地址自动增量;STD 使 DF=1,在执行串处理指令时可使地址自动减量
2)重复前缀指令 重复次数由计数寄存器 CX 中存放的值决定,指令每重复执行一次,计数器 CX 中值减 1,当 CX 中值减至 0 时,停止重复执行,继续执行下一条指令
当 REP 无条件重复前缀,重复串操作直到计数寄存器的内容 CX 为 0 为止
经常与 REP 配合工作的字符串处理指令有 MOVS、STOS 和 LODS
当 REPE/REPZ 判断计数寄存器的内容 CX 是否为 0 或 ZF=0(即比较的两个操作数不等),只要满足一个则重复执行结束,否则继续执行
可以与 REPE/REPZ 配合工作的串指令有 CMPS 和