汇编语言: .试编写一段程序,要求对键盘输入的小写字母用大写字母显示出来

本文介绍了一个简单的汇编语言程序,该程序能够接收用户输入的小写字母,并将其转换为对应的大写字母进行输出。通过对ASCII码的处理实现大小写转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

试编写一段程序,要求对键盘输入的小写字母用大写字母显示出来
2017年5月24日14:11:13

data segment
data ends

code segment
    assume cs:code,ds:data
 p  proc far
    mov ax,data
    mov ds,ax   

    ;接受输入字符 al=输入字符
    mov ah,01h
    int 21h
    ;比较该字符
    cmp al,'a'
    jb input
    cmp al,'z'
    ja input

    ;可以sub al,20h (hex)
    sub al,32   

input : 
    xchg dl,al
    mov ah,02h
    int 21h

    mov ah,4ch
    int 21h

    p endp
    code ends
    end p
### 关于汇编语言期末考试题 获取汇编语言相关的期末考试题目可以通过多个途径实现。教育机构和在线平台经常提供免费的学习资源,包括试题库、练习题以及模拟测试。 对于学生而言,大学课程网站通常是寻找官方推荐复习材料的好地方[^1]。许多高校会公开以往年度的试卷作为学习参考资料。此外,在线社区和技术论坛也是错的资源渠道,例如GitHub上存在少由个人或团队整理并分享出来的编程类考题集合。 然而需要注意的是,直接用于评估目的的具体年份正式考试文档可能受版权保护而易获得完全开放访问权限;因此建议优先考虑那些标明可以自由使用的公共资源或者参加学校组织的相关测验活动来准备考试。 为了帮助更好地理解和掌握汇编语言的知识点,下面给出一道典型的汇编语言期末考试题目: #### 题目示例 编一段8086汇编程序,该程序接收键盘输入的一个字符,并将其转换成大形式显示出来(如果已经是大写字母则保持变)。假设只处理ASCII码表中的英文字母。 ```assembly .model small .stack 100h .data msg db 'Enter a character:$' .code main proc mov ax,@data mov ds,ax lea dx,msg ;加载提示信息地址到DX寄存器 mov ah,9 ;功能号设置为打印字符串 int 21h ;调用DOS中断服务 mov ah,1 ;读取单个字符的功能号 int 21h ;执行读入操作,AH=1时AL保存读入的字符 ;此时AL中即为我们从键盘得到的数据 cmp al,'a' ;比较是否小于'a',如果是说明小写字母 jl not_lower ;跳转至not_lower标签处继续执行 cmp al,'z' ;判断是否超过'z'(即确认是在a-z之间的小写字母) jg not_lower ;如果小写字母就跳过转换过程 sub al,32 ;将小写字母变为对应的大写字母(因为'A'=65='a'-32) not_lower: mov dl,al ;把最终要输出的内容放到DL里边去 mov ah,2 ;AH置为2表示即将进行单独字符输出 int 21h ;触发dos中断完成屏幕上的字符展示 mov ah,4ch ;结束程序运行的服务请求编号放入AH int 21h ;终止应用程序返回操作系统控制台界面 main endp end main ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值