东北大学软件学院汇编实验报告3.doc_第1页
东北大学软件学院汇编实验报告3.doc_第2页
东北大学软件学院汇编实验报告3.doc_第3页
东北大学软件学院汇编实验报告3.doc_第4页
东北大学软件学院汇编实验报告3.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(附录二)汇编语言程序设计实验报告 实验名称循环结构与子程序设计实验班 级学 号姓 名日 期成 绩评 阅 人软件学院一、 实验目的与意义了解和掌握加、减、乘、除指令的在程序设计中的用法和应注意的问题,了解和掌握移位指令的功能、作用和方法。了解和掌握循环控制类指令的功能、作用和方法。学会循环程序设计的方法。学习汇编语言输出输入语句的设计。二、 实验环境操作系统:windows7调试软件名称及版本号:Microsoft Visual Studio2008三、 实验的预习内容预习的主要内容:预习了加减乘除指令,移位指令,循环指令的作用及方法,学习力函数的调用,在屏幕上打出指定字符和数字实验思路:将寄存器赋值,然后对寄存器进行加减乘除,移位的运算,观察寄存器的数值变化,用逐语句观察循环语句中程序执行的顺序,了解循环的作用四、 实验的步骤与调试方法实验的大致步骤:在.code中对程序进行加减乘除,移位操作,观察寄存器的变化实验中遇到的问题及调试方法:在做9*9乘法表时,由于是32位的操作系统,无法用中断来进行回车换行,最后通过给赋值,直接打出回车五 实验数据与实验结果() 在DEBUG系统状态下,分别编制、调试并记录以下加、减程序段的每一条指令的运行情况,查看寄存器的结果:()MOV EAX,2389 EAX = 00000955 EBX = 7FFDF000 ECX = 00000000 EDX = 00131005 ESI = 00000000 EDI = 00000000 EIP = 0013101A ESP = 002AF9B4 EBP = 002AF9BC EFL = 00000246 MOV EBX,0CEDFH EAX = 00000955 EBX = 0000CEDF ECX = 00000000 EDX = 00131005 ESI = 00000000 EDI = 00000000 EIP = 0013101F ESP = 002AF9B4 EBP = 002AF9BC EFL = 00000246 ADD EAX,EBX EAX = 0000D834 EBX = 0000CEDF ECX = 00000000 EDX = 00131005 ESI = 00000000 EDI = 00000000 EIP = 00131021 ESP = 002AF9B4 EBP = 002AF9BC EFL = 00000212 () MOV EAX,2389 EAX = 00000955 EBX = 7FFDD000 ECX = 00000000 EDX = 008D1005 ESI = 00000000 EDI = 00000000 EIP = 008D101A ESP = 0028F89C EBP = 0028F8A4 EFL = 00000246 MOV EBX,0CEDFH EAX = 00000955 EBX = 0000CEDF ECX = 00000000 EDX = 008D1005 ESI = 00000000 EDI = 00000000 EIP = 008D101F ESP = 0028F89C EBP = 0028F8A4 EFL = 00000246 SUB EAX,EBX EAX = FFFF3A76 EBX = 0000CEDF ECX = 00000000 EDX = 008D1005 ESI = 00000000 EDI = 00000000 EIP = 008D1021 ESP = 0028F89C EBP = 0028F8A4 EFL = 00000293 () MOV EAX,2389 EAX = 00000955 EBX = 7FFD8000 ECX = 00000000 EDX = 00B31005 ESI = 00000000 EDI = 00000000 EIP = 00B3101A ESP = 002BFA7C EBP = 002BFA84 EFL = 00000246 MOV EBX,0CEDFH EAX = 00000955 EBX = 0000CEDF ECX = 00000000 EDX = 00B31005 ESI = 00000000 EDI = 00000000 EIP = 00B3101F ESP = 002BFA7C EBP = 002BFA84 EFL = 00000246 ADD AH,BH EAX = 0000D755 EBX = 0000CEDF ECX = 00000000 EDX = 00B31005 ESI = 00000000 EDI = 00000000 EIP = 00B31021 ESP = 002BFA7C EBP = 002BFA84 EFL = 00000296 ADD AL,BL EAX = 0000D734 EBX = 0000CEDF ECX = 00000000 EDX = 00B31005 ESI = 00000000 EDI = 00000000 EIP = 00B31023 ESP = 002BFA7C EBP = 002BFA84 EFL = 00000213 () MOV EAX,2389 EAX = 00000955 EBX = 7FFD3000 ECX = 00000000 EDX = 00FD1005 ESI = 00000000 EDI = 00000000 EIP = 00FD101A ESP = 001AFB4C EBP = 001AFB54 EFL = 00000246 MOV EBX,0CEDFH EAX = 00000955 EBX = 0000CEDF ECX = 00000000 EDX = 00FD1005 ESI = 00000000 EDI = 00000000 EIP = 00FD101F ESP = 001AFB4C EBP = 001AFB54 EFL = 00000246 ADD AH,BH EAX = 0000D755 EBX = 0000CEDF ECX = 00000000 EDX = 00FD1005 ESI = 00000000 EDI = 00000000 EIP = 00FD1021 ESP = 001AFB4C EBP = 001AFB54 EFL = 00000296 ADC AL,BL EAX = 0000D734 EBX = 0000CEDF ECX = 00000000 EDX = 00FD1005 ESI = 00000000 EDI = 00000000 EIP = 00FD1023 ESP = 001AFB4C EBP = 001AFB54 EFL = 00000213 ()在DEBUG系统状态下,分别编制、调试并记录以下乘、除程序段的每一条指令的运行情况:()MOV AL,23 EAX = 752E1117 EBX = 7FFDF000 ECX = 00000000 EDX = 01351005 ESI = 00000000 EDI = 00000000 EIP = 01351017 ESP = 002BFADC EBP = 002BFAE4 EFL = 00000246 MOV BL,0CEH EAX = 752E1117 EBX = 7FFDF0CE ECX = 00000000 EDX = 01351005 ESI = 00000000 EDI = 00000000 EIP = 01351019 ESP = 002BFADC EBP = 002BFAE4 EFL = 00000246 MUL BL EAX = 752E1282 EBX = 7FFDF0CE ECX = 00000000 EDX = 01351005 ESI = 00000000 EDI = 00000000 EIP = 0135101B ESP = 002BFADC EBP = 002BFAE4 EFL = 00000A47 () MOV AX,2389 EAX = 752E0955 EBX = 7FFDE000 ECX = 00000000 EDX = 001D1005 ESI = 00000000 EDI = 00000000 EIP = 001D1019 ESP = 003EFE7C EBP = 003EFE84 EFL = 00000246 MOV BX,0CEDFH EAX = 752E0955 EBX = 7FFDCEDF ECX = 00000000 EDX = 001D1005 ESI = 00000000 EDI = 00000000 EIP = 001D101D ESP = 003EFE7C EBP = 003EFE84 EFL = 00000246 MUL BX EAX = 752E870B EBX = 7FFDCEDF ECX = 00000000 EDX = 001D078A ESI = 00000000 EDI = 00000000 EIP = 001D1020 ESP = 003EFE7C EBP = 003EFE84 EFL = 00000A47 () MOV AX,2389 EAX = 752E0955 EBX = 7FFDA000 ECX = 00000000 EDX = 00901005 ESI = 00000000 EDI = 00000000 EIP = 00901019 ESP = 001AF828 EBP = 001AF830 EFL = 00000246 MOV BL,0CEH EAX = 752E0955 EBX = 7FFDA0CE ECX = 00000000 EDX = 00901005 ESI = 00000000 EDI = 00000000 EIP = 0090101B ESP = 001AF828 EBP = 001AF830 EFL = 00000246 DIV BL EAX = 752E7B0B EBX = 7FFDA0CE ECX = 00000000 EDX = 00901005 ESI = 00000000 EDI = 00000000 EIP = 0090101D ESP = 001AF828 EBP = 001AF830 EFL = 00000246 () MOV AX,2389 EAX = 75630955 EBX = 7FFD6000 ECX = 00000000 EDX = 00B51005 ESI = 00000000 EDI = 00000000 EIP = 00B51019 ESP = 0028FAAC EBP = 0028FAB4 EFL = 00000246 MOV DX,0856 EAX = 75630955 EBX = 7FFD6000 ECX = 00000000 EDX = 00B50358 ESI = 00000000 EDI = 00000000 EIP = 00B5101D ESP = 0028FAAC EBP = 0028FAB4 EFL = 00000246 MOV BX,0CEDFH EAX = 75630955 EBX = 7FFDCEDF ECX = 00000000 EDX = 00B50358 ESI = 00000000 EDI = 00000000 EIP = 00B51021 ESP = 0028FAAC EBP = 0028FAB4 EFL = 00000246 DIV BX EAX = 75630423 EBX = 7FFDCEDF ECX = 00000000 EDX = 00B544D8 ESI = 00000000 EDI = 00000000 EIP = 00B51024 ESP = 0028FAAC EBP = 0028FAB4 EFL = 00000246 () 在DEBUG系统状态下,分别编制、调试并记录以下移位指令程序段的每一条指令的运行情况:() mov EAX,420 EAX = 000001A4 EBX = 7FFDD000 ECX = 00000000 EDX = 012C1005 ESI = 00000000 EDI = 00000000 EIP = 012C101A ESP = 0013FC30 EBP = 0013FC38 EFL = 00000246 shl EAX,1 EAX = 00000348 EBX = 7FFDD000 ECX = 00000000 EDX = 012C1005 ESI = 00000000 EDI = 00000000 EIP = 012C101C ESP = 0013FC30 EBP = 0013FC38 EFL = 00000206 () mov EAX,240 EAX = 000000F0 EBX = 7FFD9000 ECX = 00000000 EDX = 002F1005 ESI = 00000000 EDI = 00000000 EIP = 002F101A ESP = 0027FCDC EBP = 0027FCE4 EFL = 00000246 mov cl,4 EAX = 000000F0 EBX = 7FFD9000 ECX = 00000004 EDX = 002F1005 ESI = 00000000 EDI = 00000000 EIP = 002F101C ESP = 0027FCDC EBP = 0027FCE4 EFL = 00000246 shl EAX,cl EAX = 00000F00 EBX = 7FFD9000 ECX = 00000004 EDX = 002F1005 ESI = 00000000 EDI = 00000000 EIP = 002F101E ESP = 0027FCDC EBP = 0027FCE4 EFL = 00000206 () mov EAX,8000 EAX = 00001F40 EBX = 7FFD8000 ECX = 00000000 EDX = 008F1005 ESI = 00000000 EDI = 00000000 EIP = 008F101A ESP = 0014FF7C EBP = 0014FF84 EFL = 00000246 mov cl,4 EAX = 00001F40 EBX = 7FFD8000 ECX = 00000004 EDX = 008F1005 ESI = 00000000 EDI = 00000000 EIP = 008F101C ESP = 0014FF7C EBP = 0014FF84 EFL = 00000246 shr EAX,cl EAX = 000001F4 EBX = 7FFD8000 ECX = 00000004 EDX = 008F1005 ESI = 00000000 EDI = 00000000 EIP = 008F101E ESP = 0014FF7C EBP = 0014FF84 EFL = 00000202 () mov EAX,8000 EAX = 00001F40 EBX = 7FFDB000 ECX = 00000000 EDX = 00BD1005 ESI = 00000000 EDI = 00000000 EIP = 00BD101A ESP = 0014F7A4 EBP = 0014F7AC EFL = 00000246 mov cl,4 EAX = 00001F40 EBX = 7FFDB000 ECX = 00000004 EDX = 00BD1005 ESI = 00000000 EDI = 00000000 EIP = 00BD101C ESP = 0014F7A4 EBP = 0014F7AC EFL = 00000246 sar EAX,cl EAX = 000001F4 EBX = 7FFDB000 ECX = 00000004 EDX = 00BD1005 ESI = 00000000 EDI = 00000000 EIP = 00BD101E ESP = 0014F7A4 EBP = 0014F7AC EFL = 00000202 () mov EAX,8086 EAX = 00001F96 EBX = 7FFDF000 ECX = 00000000 EDX = 001A1005 ESI = 00000000 EDI = 00000000 EIP = 001A101A ESP = 002FF940 EBP = 002FF948 EFL = 00000246 mov cl,4 EAX = 00001F96 EBX = 7FFDF000 ECX = 00000004 EDX = 001A1005 ESI = 00000000 EDI = 00000000 EIP = 001A101C ESP = 002FF940 EBP = 002FF948 EFL = 00000246 rol EAX,cl EAX = 0001F960 EBX = 7FFDF000 ECX = 00000004 EDX = 001A1005 ESI = 00000000 EDI = 00000000 EIP = 001A101E ESP = 002FF940 EBP = 002FF948 EFL = 00000246 () mov EAX,8086 EAX = 00001F96 EBX = 7FFD8000 ECX = 00000000 EDX = 008D1005 ESI = 00000000 EDI = 00000000 EIP = 008D101A ESP = 001BFE10 EBP = 001BFE18 EFL = 00000246 mov cl,4 EAX = 00001F96 EBX = 7FFD8000 ECX = 00000004 EDX = 008D1005 ESI = 00000000 EDI = 00000000 EIP = 008D101C ESP = 001BFE10 EBP = 001BFE18 EFL = 00000246 ror EAX,cl EAX = 600001F9 EBX = 7FFD8000 ECX = 00000004 EDX = 008D1005 ESI = 00000000 EDI = 00000000 EIP = 008D101E ESP = 001BFE10 EBP = 001BFE18 EFL = 00000246 () mov EAX,8086 EAX = 00001F96 EBX = 7FFD9000 ECX = 00000000 EDX = 01291005 ESI = 00000000 EDI = 00000000 EIP = 0129101A ESP = 001FF9E4 EBP = 001FF9EC EFL = 00000246 mov cl,4 EAX = 00001F96 EBX = 7FFD9000 ECX = 00000004 EDX = 01291005 ESI = 00000000 EDI = 00000000 EIP = 0129101C ESP = 001FF9E4 EBP = 001FF9EC EFL = 00000246 rcl EAX,cl EAX = 0001F960 EBX = 7FFD9000 ECX = 00000004 EDX = 01291005 ESI = 00000000 EDI = 00000000 EIP = 0129101E ESP = 001FF9E4 EBP = 001FF9EC EFL = 00000246 () mov EAX,8086 EAX = 00001F96 EBX = 7FFDE000 ECX = 00000000 EDX = 00D51005 ESI = 00000000 EDI = 00000000 EIP = 00D5101A ESP = 0014FD74 EBP = 0014FD7C EFL = 00000246 mov cl,4 EAX = 00001F96 EBX = 7FFDE000 ECX = 00000004 EDX = 00D51005 ESI = 00000000 EDI = 00000000 EIP = 00D5101C ESP = 0014FD74 EBP = 0014FD7C EFL = 00000246 rcr EAX,cl EAX = C00001F9 EBX = 7FFDE000 ECX = 00000004 EDX = 00D51005 ESI = 00000000 EDI = 00000000 EIP = 00D5101E ESP = 0014FD74 EBP = 0014FD7C EFL = 00000246 rol与rcl、ror与rcr的区别在于rol和ror是将寄存器中的内容直接进行移位,而rcl和rcr是将寄存器中的内容与_进位位_()中的内容一起进行移位,因此参加移位的数据比原来的数据位数_多一_。(5) 已知DATA单元开始存放一组无符号的字节数据,数据长度在CNT单元存放。编制程序,检查该组数据中是否存在数据100,若存在,则在显示器上显示“Y”,否则显示“N”。代码TITLE MASM Template(main.asm); Description:; ; Revision d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论