微型计算机使用键盘大写,微机原理课程设计(汇编语言)——将键盘输入的小写字母转换成大写字母的设计.doc...

微机原理课程设计(汇编语言)——将键盘输入的小写字母转换成大写字母的设计

设计6、将键盘输入的小写字母转换成大写字母的设计

实验要求:

为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换。编写程序,接收键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。

参考流程:

程序清单:

DATA SEGMENT

DATA1 DB 20 DUP(?)

DISPP1 DB 'please input letters, end with enter, exit with ctrl-c',0DH,0AH,'$'

DISPP2 DB 'the inverted litter is:', 0DH, 0AH,'$'

DISPP3 DB 0DH,0AH,'$'

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV SI,00H

MOV BX,OFFSET DATA1

LEA DX,DISPP1

MOV AH,9

INT 21H

L1: MOV AH,1

INT 21H

CMP AL,03H

JZ L4

CMP AL,0DH

JZ L3

CMP AL,61H

JZ L2

SUB AL,20H

JMP L2

L2: MOV [BX+SI],AL

INC SI

JMP L1

L3: LEA DX,DISPP3

MOV AH,9

INT 21H

LEA DX,DISPP2

MOV AH,9

INT 21H

MOV [BX+SI],AL

MOV AL,0AH

MOV [BX+SI+1],AL

MOV AL,'$'

MOV [BX+SI+2],AL

MOV DX,BX

MOV AH,9

INT 21H

LEA DX,DISPP3

MOV AH,9

INT 21H

JMP L4

L4: MOV AH,4CH

INT 21H

CODE ENDS

END START

运行结果显示:

返回DOS

显示转换后的字符行缓冲区内容

SI加1指向下一单元

存入字符缓冲区[BX+SI]单元

小写字母的ASCII码值转化为大写字母的ASCII码值

是ctrl+c键?

是回车键?

是小写字母?

INT 21H的01H号子功能接收键入字符

偏移指针SI清0

BX指向字符行缓冲区首址

段寄存器和堆栈初始化

入口

Y

Y

Y

N

N

N

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值