汇编作业编程题C-1

这是一篇关于汇编语言编程的博客,作者通过编写程序展示如何在CRT上显示以'$'为结束标志的字符串,并将其中的小写字母转为大写。文章记录了作者的学习过程,提到理解某些概念和机制仍需努力,同时欢迎读者指出错误并提供指导。
摘要由CSDN通过智能技术生成

题目

已知在以BUF为首地址的字节存储区中,存放着一个以’$'作结束标志的字符串,试编写程序,在CRT上显示该字符串,并要求将小写字母以大写字母形式显示出来

代码如下

DATA SEGMENT
BUF DB 'sdkj*@claf$'
COUNT EQU $-BUF
MSG1 DB 0AH,0DH,'before the transformation:$'
MSG2 DB 0AH,0DH,'after the transformation:$'
DATA ENDS

CODE SEGMENT 
ASSUME CS:CODE, DS:DATA

START:
     MOV AX, DATA                   初始化数据
     MOV DS, AX 
     MOV BX,OFFSET  BUF             将BUF的偏移地址给BX
     MOV CL, COUNT                  用CL保存字符串的长度
    
     MOV DX,OFFSET MSG1             显示MSG1字符串
     MOV AH,9
     INT 21H
     LEA DX,BUF                     显示BUF里保存的原字符串
     MOV AH,9
     INT 21H

LP:    
     MOV AL,[BX]                    AL存放字符串的内容
     CMP AL,61H                     与小写字母a进行比较
     JB  X                          如果该字符的ASC码小于a,则跳转至X
     CMP AL,7AH                     与小写字母z进行比较
     JA  X                          如果该字符的ASC码大于z,则跳转至X
     SUB AL,20H 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值