ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:23.35KB ,
资源ID:2052795      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2052795.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理实验指导书.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理实验指导书.docx

1、微机原理实验指导书 实验一数据传送 实验目的 : 1. 熟悉 8086 指令系统的数据传送指令及 8086 的寻址方式。 2. 利用 Turbo Debugger 调试工具来调试汇编语言程序。 实验任务 : 1通过下述程序段的输入和执行来熟悉 Turbo Debugger 的使用,并通过显示器屏幕观察程序的执行情况。练习程序段如下: MOV BL , 08H MOV CL , BL MOV AX , 03FFH MOV BX , AX MOV DS : 0020H , BX 2用以下程序段将一组数据压入( PUSH )堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。压栈程序段如下

2、: MOV AX , 0102H MOV BX , 0304H MOV CX , 0506H MOV DX , 0708H PUSH AX PUSH BX PUSH CX PUSH DX 出栈程序段请自行编写(用不同的出栈顺序)。3. 指出下列指令的错误并加以改正,上机验证之。 (1) MOV BX , SI (2) MOV AH , BX (3) MOV AX , SIDI (4) MOV BYTE PTRBX , 2000H (5) MOV CS , AX (6) MOV DS , 2000H 4. 设置各寄存器及存储单元的内容如下: (BX) 0010H , (SI) 0001H (10

3、010H) 12H , (10011H) 34H , (10012H) 56H , (10013H) 78H (10120H) 0ABH , (10121H) 0CDH , (10122H) 0EFH 说明下列各条指令执行完后 AX 寄存器中的内容,并上机验证。 (1) MOV AX , 1200H (2) MOV AX , BX (3) MOV AX , 0120H (4) MOV AX , BX (5) MOV AX , 0110HBX (6) MOV AX , BXSI (7) MOV AX , 0110HBXSI 5. 将 DS : 1000H 字节存储单元中的内容送到 DS : 20

4、20H 单元中存放。试分别用 8086 的直接寻址、寄存器间接寻址、变址寻址、寄存器相对寻址传送指令编写程序段,并上机验证结果。 6. 设 AX 寄存器中的内容为 1111H , BX 寄存器中的内容为 2222H , DS : 0010H 单元中的内容为 3333H 。将 AX 寄存器中的内容与 BX 寄存器中的内容交换,然后再将 BX 寄存器中的内容与 DS : 0010H 单元中的内容进行交换。试 编写程序段,并上机验证结果。7. 设 (DS) 1000H , (ES) 2000H ,有关存储器的内容如图 所示。要求将 DS 段的内容传送到 AX 寄存器, ES 段的内容传送到 BX 寄

5、存器,试编写程序段。 .0FFDS : 1000H0EEH. 0DDH ES : 2000H 0CCH . 图 1 第 7 题图 实验报告要求 : 1. 写明本次实验内容和实验步骤。 2. 整理出运行正确的各题源程序段和运行结果。 3. 写出第 3 题中改正后的正确指令。 4. 小结 Turbo Debugger 的使用方法。 实验二 算术逻辑运算及移位操作 实验目的 : 1熟悉算术逻辑运算指令和移位指令的功能。 2了解标志寄存器各标志位的意义和指令执行对它的影响。 实验预习要求: 1复习 8086 指令系统中的算术逻辑类指令和移位指令。 2按照题目要求在实验前编写好实验中的程序段。 实验任务

6、: : 2 实验程序段及结果表格如表 1. 表 2 标志CFZFSFOFPFAF0 100000程序MOV AX, 1018HMOV SI, 230AHADD AX, SIADD AL, 30HMOV DX, 3FFH BXADD AXMOV 20H, 1000HADD 20H, AXPUSH AXPOP BX0程序 200000MOV AX, 0A 0AHADD AX, 0FFFFHMOV CX, 0FF00HADC AX, CXSUB AX, AXINC AXOR CX, 0FFHAND CX, 0F 0FHMOV 10H, CX 0 0 0 0 0 0 : 3 程序段MOV BL, 25

7、HMOV BYTE PTR10H, 4MOV AL, 10HMUL BL0000程序 400MOV WORD PTR10H,80HMOV BL, 4MOV AX, 10HDIV BL程序 5000000MOV AX, 0DEC AXADD AX, 3FFFHADD AX, AXNOT AXSUB AX, 3OR AX, 0FBFDHAND AX, 0AFCFH 1SHL AX 1RCL AX 开始连续存入2 BX 寄存器作为地址指针, BX 从所指的内存单元 (0010H) 用,接着计算内存单元中的这三个数之和,、三个无符号数 (10H 30H) 、 04H 单元中。写出完成此 0014 00

8、13H 和放在单元中,再求出这三个数之积,积放 功能的程序段并上机验证结果。 写出完成下述功能的程序段。上机验证你写出的程序段,程序运行的最后结3 ? (AX) 果(1) 传送 15H 到 AL 寄存器; (2) 再将 AL 的内容乘以 2 ; (3) 接着传送 15H 到 BL 寄存器; (4) 最后把 AL 的内容乘以 BL 的内容。 4写出完成下述功能的程序段。上机验证你写出的程序段,程序运行后的商 ? (1) 传送数据 2058H 到 DS : 1000H 单元中,数据 12H 到 DS : 1002H 单元中; (2) 把 DS : 1000H 单元中的数据传送到 AX 寄存器; (

9、3) 把 AX 寄存器的内容算术右移二位; (4) 再把 AX 寄存器的内容除以 DS : 1002H 字节单元中的数; (5) 最后把商存入字节单元 DS :1 003H 中。 5下面的程序段用来清除数据段中从偏移地址 0010H 开始的 12 个字存储单元的内容(即将零送到这些存储单元中去)。 (1) 将第 4 条比较指令语句填写完整(划线处)。 MOV SI , 0010H NEXT : MOV WORD PTRSI , 0 ADD SI , 2 CMP SI , JNE NEXT HLT (2) 假定要按高地址到低地址的顺序进行清除操作(高地址从 0020H 开始),则上述程序段应如何

10、修改? 上机验证以上两个程序段并检查存储单元的内容是否按要求进行了改变。 6. 输入并运行表 3 中的程序段,把结果填入表右边的空格中,并分析结果,说明本程序段的功能是什么。 3 表程序字单 ( 1A 00H)=字单 ( 1A 02H)=MOV 1A 00H, 0AA55HMOV 1A 02H, 2AD5HSHL WORD PTR 1A 02H,1CMP 1A 00H, 8000HCMCRCL WORD PTR 1A 02H,1RCL WORD PTR 1A 00H,1 实验报告要求1.整理出完整的实验程序段和运行结果。 2.回答题目中的问题。 3. 简要说明 ADD 、 SUB 、 AND

11、、 OR 指令对标志位的影响。 4. 简要说明一般移位指令与循环移位指令之间的主要区别。 实验三串操作 实验目的: 1熟悉串操作指令的功能。 2了解串操作指令的使用方法。 实验预习要求; 1复习 8086 指令系统中的串操作类指令。 2按照题目要求在实验前编写好实验中的程序段。 实验任务 : 1. 输入以下程序段并运行之,回答后面的问题。 CLD MOV DI , 1000H MOV AX , 55AAH MOV CX , 10H REP STOSW 上述程序段执行后: (1) 从 DS : 1000H 开始的 16 个字单元的内容是什么? (2) ( DI ) = ?( CX ) = ?,并

12、解释其原因。 2.在上题的基础上,再输入以下程序段并运行之,回答后面的问题。 MOV SI , 1000H MOV DI , 2000H MOV CX , 20H REP MOVSB 程序段执行后: (1) 从 DS : 2000H 开始的 16 个字单元的内容是什么? (2) ( SI ) = ?( DI ) = ?( CX ) = ?,并分析之。 3.在以上两题的基础上,再输入以下三个程序段并依次运行之。 程序段 1 : MOV SI , 1000H MOV DI , 2000H MOV CX , 10H REPZ CMPSW 程序段 1 执行后: (1) ZF= ? 根据 ZF 的状态,

13、你认为两个串是否比较完了? ?,并分析之。 = ) CX ?( = ) DI ?( = ) SI ((2) 程序段 2 : MOV 2008H , 4455H MOV SI , 1000H MOV DI , 2000H MOV CX , 10H REPZ CMPSW 程序段 2 执行后: (1) ZF= ? 根据 ZF 的状态,你认为两个串是否比较完了? (2) ( SI ) = ?( DI ) = ?( CX ) = ?,并分析之。 程序段 3 : MOV AX , 4455H MOV DI , 2000H MOV CX , 10H REPNZ SCASW 程序段 3 执行后: (1) ZF

14、= ? 根据 ZF 的状态,你认为在串中是否找到了数据 4455H ? (2) ( SI ) = ?( DI ) = ?( CX ) = ?,并分析之。 4. 从 DS : 1000H 开始存放有一个字符串 ”This is a string” ,要求把这个字符串从后往前传送到 DS : 2000H 开始的内存区域中(即传送结束后,从 DS : 2000H 开始的内存单元的内容为 ”gnirts a si sihT” ),试编写程序段并上机验证之。 实验报告要求 : 1.整理出完整的实验程序段和运行结果,对结果进行分析。 2.简要说明执行串操作指令之前应初始化哪些寄存器和标志位。 3.总结串操作指令的用途及使用方法。 实验四字符及字符串的输入和输出 实验目的 : 1熟悉如何进行字符及字符串的输入输出。 2掌握简单的 DOS 系统功能调用。 实验预习要求 : 1复习系统功能调用的 1 、 2 、 9 、 10 号功能

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1