当前位置 首页 >工作报告 > 工作计划 >

汇编语言课程设计报告报告

作者:jkyxc 浏览数:
-

 显示变换后的字符串

 masl byte mas2 byte**',13,10,0

 masl byte mas2 byte

 **',13,10,0

 四、程序源代码

 in elude io32.i nc

 .data '*************************************' 13 10 0

 编密码

 mas3 byte

 \ *************************************

 ',13,10,0

 BUF1 byte 'Please in put random stri ng,e nd with En ter key:'; 提示输入

 BUF2 dword 10 dup(O);存放输入的字符,假设最多 10个字符

 BUF3 dword ?;存放转换过的字符

 .code start:

 mov eax,offset mas1 call dispmsg

 mov eax,offset mas2

 call dispmsg

 mov eax,offset mas3 call dispmsg

 start1:

 mov eax,offset BUF1

 call dispmsg

 mov eax,offset BUF2

 call readmsg ;输入一个字符串

 mov esi,0

 mov ecx,le ngthof BUF2 ;字符串的长度

 mov edx,offset BUF2 ; EDX指向输入缓冲区 mov edi,offset BUF3

 aga in:

 mov al,[edx] ;取一个字符

 inc edx cmp al,0

 jz zui

 cmp al,41H;判断是不是字母

 jc read1;是数字转到read1 cmp al,61H;判断是不是小写 jc read6;小于是大写 cmp al,77H;是不是超过小写z

 jae read5;大于等于

 jmp read4;小写加 4

 read1:

 mov [edi],al

 inc edi

 jmp again read2:

 cmp al,57h; 超过大写 Z

 jae read3

 add al,04H ;是大写,先 +4

 mov [edi],al

 inc edi

 jmp again

 jmp read4 read5:

 cmp al,7BH; 不是小写字母 jae read1 jmp read3 read6:

 cmp al,5BH

 jc read2; 小于是小写的jmp read1

 read3:

 sub al,22 ;减 22

 jmp read1

 read4:

 add al,04H

 mov [edi],al

 inc edi

 jmp again

 loop again zui:

 mov eax,offset BUF3

 call dispmsg

 call dispcrlf

 mov edx,offset BUF2 ; 清空缓存区 mov edi,offset BUF3 mov ecx,10

 mov esi,0

 qing:

 mov [edx],esi

 mov [edi],esi

 loop qing

 jmp start1

 exit 0 end start

 五、效果图

 ■71

 胆:町匚编语言逞序实验€匚编语言程序实

 2012/06/83

 2012/06/03

 1?:H

 23 H8

 eZ匚编语言程序实验弋匚编语言程序实殓wsn的目录

 "百匚编语言程序实验殆匚编语盲程序实M^1ftSM>nake32 00B

 Mic^soJt <B> Macro Assemblep Uepsi?n &.15.8803

 Copifriglit <<!> Microsoft Corp 1981-2iB00. All fights reserved

 000,asn

 l 00exe

 MtJU.lst

 000. obj

 425宇爷

 .344可用字节

 Micro^oft UindoiPtr 【扳卒 &0OJ

 版权、所有 ?)2609 Microsoft Cdf^orationD保留所有■权列

 Assembling: 00U_asn

 Microsoft CJt》I ncrenen tai Linket* Ue rs io n 6 - 80.81^S

 CupprlyliL <€> Hiurusuf t Corjj 丄952—1$96 - All t'lyhlsi retiefued

 琶理员刃血垃

 F: X编语窖程序实验弋匚编语言程序实验^ASM>000 戸KJCKKXJC 弱其 X>C XMLJCJCXJtX JCJC KK X如騎MLJCJt JCHJCKMKK 其竝 ** 编密码 **

 string^end with string^end uith striny^encl with ati'in^,cr

 string^end with string^end uith striny^encl with ati'in^,cr)d witl> 口-歧ntl uith

 Please input random 123-15

 Please in put randon gleur

 Please in put random glenrrsl

 Please in put randon ,,ue}ivsl

 Please inQttt FEndori

 Enter key=12345

 Enter- ke^:chaii

 Entei* ke9:chainnol

 Enter heir:,?jmdl

 Enter* key:

 六、遇到问题及解决方法

 在开始编好程序的时候,我发现输出的并不是我想要的结果,后来在调试程 序中我用-t指令进行逐步运行程序,我才发现我的错误之处。原来我在程序的里 面没有注意看wyzx的转变,后来在加了两个判断,并将 wxyz减22得到相应的 abed,在改正之后,整个程序就运行得到我想要的结果了。

 七、体会和心得

 体会:在做实验之前,我有很多的指令不熟悉,不少指令都不会用,通过做 实验,我对这些指令更加熟悉,用起来更加熟练。有很多问题,不通过做实验, 可能永远也不会知道。也许很多知识我们也知道,当在真正解决问题时,不一定 能够想到。只有通过做实验,我才对很多知识有了更深的认识。

 在做实验时,我也碰到很多问题,正是通过分析这些问题,解决这些问题, 我才逐渐真正掌握了某些知识。以前看书的时候,我感觉很多知识我似乎也会了, 某些题目我似乎也能解决了。

 但是真正做起实验, 我才发现, 实际上我还有很多 知识没有掌握好。通过实验的学习,我对学习汇编语言有了一个更深的认识。

 同时,我也真正认识到, 学习这些计算机语言, 只有通过大量的实验才能够 真正的掌握那些知识。

 也只有通过实验才能够让我们意识到自己的不足之处, 从 而改正。在做实验的过程中,我通过调试,让我解决了很多问题,也让我以前一 些不理解的知识变得更加明白。

 最重要的是让我对一些知识有了深刻的印象, 不 容易遗忘。

 意见:我想,可以用来做汇编实验的软件有很多,依我看来,这是完全没有 必要的, 我们完全可以用更方便的实验工具来进行汇编实验。

 例如: Masm 集成 实验环境 ,这种软件编起汇编来很方便,为我们做起汇编实验大大的节省了时 间。我想:我们做汇编实验的目的就是让我们对汇编语言的相关知识有更深的了 解,对掌握知识进行更好的巩固。

 而用更方便的编辑工具并不影响我们对相关知 识的理解和掌握

 

推荐访问:报告 报告 汇编语言 课程设计

相关文章:

Top