大学《汇编语言》(王爽) 实验十一 小写字母转变为大写字母

您所在的位置:网站首页 汇编语言将字符串中小写字母转为大写 大学《汇编语言》(王爽) 实验十一 小写字母转变为大写字母

大学《汇编语言》(王爽) 实验十一 小写字母转变为大写字母

2024-07-15 13:06| 来源: 网络整理| 查看: 265

《汇编语言》书p234页(王爽)实验11 小写字母转变为大写字母 题目要求算法思路解题代码实验结果截图

题目要求

  编写一个子程序,将包含任意字符,以‘0’结尾的字符串中的小写字母转变成大写字母。   名称:letterc   功能:将以0结尾的字符串中的小写字母转变为大写字母   参数:ds:si指向字符串首地址

算法思路

  先在db后面加上$符号及mov ah,9把该程序的结果打印出来。在这个程序,我们需要把小写字母转变为大写字母,所以我们只需要把不是小写字母的字符找出来,剩余的就是小写字母了,转为大写即可。小写字母在‘a’-‘z’中,所以在‘a’-‘z’以外的就直接跳过。

解题代码 assume cs:codesg datasg segment db "Beginner's All-purpose Symbolic Instruction Code.",0,'$' datasg ends codesg segment start: mov ax,datasg mov ds,ax mov si,0 call letterc mov dx,0 mov ah,9 int 21h letterc: ;保留寄存器的值 push si push ax ;和0作比较,判断字符串是否结束,若未结束,继续遍历 exc: mov al,[si] cmp al,0 je finish inc si ;和'a'作比较,小于就不处理 cmp al,'a' jb exc ;和'z'作比较 cmp al,'z' js exc ;小写转大写 add al,'A'-'a' mov [si-1],al jmp exc ;结束 finish: pop ax pop si ret codesg ends end start 实验结果截图

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3