[057][汇编语言]实验11 编写子程序

实验11 编写子程序

  • 题目要求:将包含任意字符,以0结尾的字符串中的小写字母转变成大写字母

实际运行

全部的小写字母转换成大写字母.png

完整源码

assume cs:codesg
datasg segment
    db "Beginner's All-purpose Symbolic Instruction Code.",0
datasg ends

codesg segment
    begin:  mov ax,datasg
            mov ds,ax
            mov si,0
            call letterc
            
            mov ax,4c00h
            int 21H
    letterc:    push cx
                push si
                push ds
                
                s:  mov cl,ds:[si]
                    mov ch,0
                    jcxz ok
                    cmp cl,61H
                    jb s0
                    cmp cl,7AH
                    ja s0
                    add cl,11011111B
                    mov ds:[si],cl
                    
                s0: inc si
                    loop s
            
        ok:     pop ds
                pop si
                pop cx
                ret

    codesg ends
    end begin

代码说明

  • 字符串中不仅有字母还有符号、空格等等, 所以不能对全部的数据都进行and运算
  • 必须用ASCII码中小写字母的范围,闭区间的 [61H,7AH] 来判断小写字母
  • 闭区间 的子程序结构
                s:  ... 控制循环...
                    cmp cl,61H
                    jb s0
                    cmp cl,7AH
                    ja s0
                    ... 小写字母的操作...
                    
                s0: inc si
                    loop s

代码参考

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 8,494评论 0 7
  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,748评论 0 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,230评论 19 139
  • 在生活圈子里,我仿佛是个局外人,用笔尖感受生活,述说着没有我的故事。 2017年8月16日 星期三 晴 天空渐...
    疯子ix阅读 5,426评论 11 8
  • 今天,股市破位下行!离场!
    深井沿阅读 1,486评论 0 0

友情链接更多精彩内容