本文介绍了字符串小写到大写表示复制最后一个字母,而不是大写字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
输入循环应将字符存储在某个位置
MOV CX, 5
MOV AH, 1
@LOOP:
INT 21H
<<<<
LOOP @LOOP
第一个输出循环应检索并使用未经修改的存储的字符
MOV CX, 5
MOV DL, BL
MOV AH, 02H
@LOOP2:
INT 21h <<<<
LOOP @LOOP2
第二个输出循环应检索存储的字符并将其大写
MOV CX, 5
MOV DL, BL
MOV AH, 02H
@LOOP3:
INT 21h <<<<
LOOP @LOOP3
常规解决方案
在代码中添加一行内容为buffer db 5 dup(0)。然后更改所有循环,如下所示:
我正在编写一个程序,将多个小写字母转换为其等效的大写字母。
例如,我想要的输出是:
Input a letter: asddf
The uppercase equivalent of letter asddf is ASDDF
但它只获取并打印最后一个字符,如下所示:
Input a letter: asddf
The uppercase equivalent of letter fffff is FFFFF
如何修复此问题?我知道我的代码不正确,但我不知道哪里出了错,因为我对这门语言仍然是新手。谢谢!
以下是我的代码:
org 100h LEA DX, lowercase MOV AH, 9 INT 21H MOV CX, 5 MOV AH, 1 @LOOP: INT 21H LOOP @LOOP MOV BL, AL LEA DX, uppercase MOV AH, 9 INT 21H MOV DL, BH MOV AH, 02H INT 21h MOV CX, 5 MOV DL, BL MOV AH, 02H @LOOP2: INT 21h LOOP @LOOP2 LEA DX, uppercase_ MOV AH, 9 INT 21H SUB BL, 20H MOV CX, 5 MOV AH, 2 MOV DL, BL @LOOP3: INT 21H LOOP @LOOP3 MOV AH, 4CH INT 21H ret lowercase db "Input a letter: $" uppercase db 0AH, 0DH, "The uppercase equivalent of letter$" uppercase_ db " is $" 推荐答案我知道我的代码不正确,但我不知道哪里出错了
- 这是存储以下内容的循环:
- 这是一个检索
更多推荐
字符串小写到大写表示复制最后一个字母,而不是大写字符串
发布评论