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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

汇编语言上机实验报告一文档格式.docx

1、操作提示:利用TD.EXE调试程序时,应先单步执行各个语句,每执行一条语句,都应观看数据段中的内容和相应寄放器的转变。二 实验要求把握大体的程序设计框架和方式、熟悉经常使用指令的用法、熟悉DOS功能挪用、进一步把握TD的利用方式。三 寄放器分派和变量概念说明此题利用LOOP做循环,一一将BUF中的字节复制到NEW_BUF中。1 存储单元分派BUF: 寄存初始串how are you NEW_BUF: 寄存复制的字符串2寄放器分派BX: BUF 的偏移地址BP:NEW_BUF的偏移地址CX:记录循环次数SI,DI:别离用作BUF和NEW_BUF的变址寄放器AX:临时寄放器四 流程图五 源代码DA

2、TA SEGMENT BUF DB N=$-BUFDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV BX,OFFSET BUF MOV BP,OFFSET NEW_BUF MOV CX,N MOV SI,CX MOV DI,0 DEC SILINE: MOV AL,BX+DI MOV DS:BP+SI,AL INC DI LOOP LINECODE ENDS END START 六 运行结果用td调试程序,能够看到在数据段里NEW_BUF已经寄存了倒置的BUF.实验二一 题目假设数据段概念如

3、下:DATA SEGMENTSTRING DB The Personal Computer & TV试用字串操作等指令编程完成一下功能:(1)把该字符串传送到附加段中偏移量为GET_CHAR开始的内存单元中。(2)(3)检查该字符串是不是有&符,假设有那么用空格符将其替换。(4)把字符串大写字母传送到附加段中CAPS开始的单元中,其余字符传到以CHART开始的单元中。然后将数据段中存储上述字符串的单元清零。学会熟练适用字符串操作指令。此题利用字符串操作指令MOVSB,CMPSB,SCASB等实现字符串的传递,比较,搜索等功能。1 变量概念说明(1)关于第一问,数据段中STRING用于寄存初始字

4、符串,附加段中GET_CHAR用于寄存复制后的字符串。(2)关于第二问,附加段中COM用于寄存待比较的字符串The Computer。(3)关于第三问,没有效到附加段,只是用到了数据段中的初始字符串STRING。(4)关于第四问,附加段中CAPS用于寄存大写字母,CHART用于寄存其他字母。SI:寄存源串的偏移地址。DI:寄存目串的偏移地址。CX:寄存循环计数值。AX,BX:临时利用的的寄放器。四流程图(1)(3)是利用STOS传到CAPSCX为0?结束否交换BX,DI(4)STRING DB The Personal Computer & TVN EQU $-STRINGHELLO SEGM

5、ENT GET_CHAR DB 100 DUP(0)CAPS DB 100 DUP(0)CHART DB 100 DUP(0)COM DB The ComputerCOMPARE DB 0NUMBER DB 0HELLO ENDSDATA,ES:HELLO MOV AX,HELLO MOV ES,AX LEA SI,STRING LEA DI,GET_CHAR CLD REP MOVSB MOV BL,0 CMP CX,12 JNE LINEB MOV AL,1 LEA DI,COM MOV BX,CX REPE CMPSB JNE LINEA JMP LINECLINEA: MOV AL,0

6、 SUB BX,CXLINEB:LINEC: MOV COMPARE,AL MOV NUMBER,BL MOV AL,& LEA DI,STRING REPNE SCASB JZ CHANGE JMP LINEDCHANGE: MOV BYTE PTR DS:DI-1, LINED: LEA DI,CAPS LEA BX,CHARTLINEF: LODSB CMP AL,41H JB LINEG CMP AL,5AH JA LINEG STOSB MOV BYTE PTR SI-1,0 JMP LINEHLINEG: XCHG BX,DILINEH: LOOP LINEF(1)运行后将原字符串

7、放在了附加段偏移地址为0000的区域,如下(2)由于两字符串长度为零,因此不相等,比较次数为零。(3)运行后已将&替换为空格,如下(4)运行后已将大写字母放在一路,其他字母放在另一区域,如下实验三编程将AX寄放器中的内容以相反的顺序传送到DX寄放器中,并要求AX中的内容不被破坏,然后统计DX寄放器中1的个数是多少。熟练把握移位指令的利用。此题先将AX中的数据循环右移,每移一名,都将移出位从DX右端移入,如此移动16次后DX即是AX的倒转的数。数据段中的PRINT,HELLO,KITTY是用来寄存一些用于输出的字符串。用于寄存原始数据DX:用于寄存倒转后的数据BL:记录DX中1的个数 PRINT

8、 DB The number of 1 in DX is :$ HELLO DB 0DH,0AH, KITTY DW 0CODE SEGMENT MOV AX,34H MOV CX,16 ROR AX,1 JC LINEB INC BL RCL DX,1 LOOP LINEA MOV KITTY,DX LEA DX,PRINT MOV AH,9 INT 21H MOV DL,BL ADD DL,30H MOV AH,2 LEA DX,HELLO MOV AX,4C00H六运行结果程序运行后能够看到DX中是AX的反转,如下所示而且将DX中的1的个数输出,如以下图中最后一行:实验四将以BUF为首地

9、址的字节存储区中的既能被2整除也能被7整除的无符号整数的个数(假定9)显示出来,同时对应的显示它们别离对应的地址偏移量。此题将0-255中能被2和7整除的数列表,关于需要检测的数,将其和该表一一对照,可知其是不是能被2和7的整除。1变量概念说明数据段中STAND用于寄存0-255中能被2和7整除的数,NUMBER用于寄存待检测的数。其他变量用于显示输出。用于寄存目的串偏移地址用于记录循环次数BX,DX,AX:临时利用 NUMBER DB 0,7,14,25,72,56,70 NA EQU $-NUMBER STAND DB 0,14,28,42,56,70,84,98,112,126,140,154,168,182,196,210,224,238,252 NB EQU $-STAND PRINTA DB Number, PRINTB DB Address PRINTC DB 0DH,0AH, LEA DX,PRINTB LEA DX,PRINTC MOV CX,NA MOV BX,0 MOV SI,0 MOV AL,BX LEA DI,STAND PUSH CX MOV CX,NB JZ LINEB INC SI POP CX INC BX LEA DX,PRINTA INT

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

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