用汇编语言编程

、字符串大写字母转换为小写
提示输入字符串;
输入任意字符串string,点击Enter 结束输入;
将字符串string 中的大写字母转换为小写字母输出;
点击Enter程序退出;
内容好的话加悬赏
速速参加

是不是要达到图片上这个效果?大写变小写,其他的不变输出。

具体程序如下,刚刚调试完毕,

;字符串大写字母转换为小写

;提示输入字符串;

;输入任意字符串string,点击Enter 结束输入;

;将字符串string 中的大写字母转换为小写字母输出,

;按回车键结束。

DATA SEGMENT

BUF1 DB 'Please input random string,end with Enter key:$';提示输入

BUF2 DB 0,0,0,0,0,0,0,0,0,0,0DH;存放输入的字符,假设最多10个字符

NUM1 DW 0;实际输入数据的个数 

BUF3 DB 0DH,0AH    ;回车换行

BUF4 DB 0,0,0,0,0,0,0,0,0,0,0DH;存放转换过的字符

DATA ENDS

CODE SEGMENT

MAIN PROC FAR

ASSUME CS:CODE,DS:DATA

START:PUSH DS

XOR AX,AX

PUSH AX

MOV AX,DATA

MOV DS,AX  

CALL PROC1

CALL PROC2    

CALL PROC3  

CALL PROC4  

CALL PROC5  

CALL PROC6

RET

MAIN ENDP 

PROC1 PROC NEAR    ;提示输入

MOV DX,OFFSET BUF1

MOV AH,09H

INT 21H;显示提示输入语句   

RET

PROC1 ENDP      

                            ;输入并存储

PROC2 PROC NEAR

MOV SI,OFFSET BUF2

MOV CX,20

SHURU:MOV AH,01H;键盘输入并回显,AL=输入字符

INT 21H

CMP AL,0DH;判断是否回车符

JZ NEXT

MOV [SI],AL

INC SI    

INC NUM1

LOOP SHURU  

NEXT:MOV [SI],0DH

RET

PROC2 ENDP  

PROC3 PROC NEAR        ;大写变小写,其他不变,存放于BUF4

MOV CX,NUM1

MOV DI,OFFSET BUF4 

MOV SI,OFFSET BUF2

BIANHUAN:     MOV AL,[SI]

OR AL,20H

NEXT1:MOV [DI],AL;不是大写字符的不变,存入BUF4,若是大写字符,则变为小写字符再存

;入BUF4对应单元

INC DI         

INC SI

LOOP BIANHUAN 

RET

PROC3 ENDP

PROC4 PROC NEAR        ;输出一个回车换行

MOV CX,2

MOV DI,OFFSET BUF3

SHUCHU:MOV DL,[DI]

MOV AH,02H

INT 21H

INC DI

LOOP SHUCHU 

RET 

PROC4 ENDP

PROC5 PROC NEAR        ;显示转化为小写之后的字符串

MOV CX,NUM1

MOV DI,OFFSET BUF4

SHUCHU1:MOV DL,[DI]

MOV AH,02H

INT 21H

INC DI

LOOP SHUCHU1 

RET 

PROC5 ENDP

               

PROC6 PROC NEAR

MOV AH,07H

CMP AL,0DH

JZ EXIT1

EXIT1:MOV AH,4CH     ;按回车键,结束程序

INT 21H               

RET

PROC6 ENDP

CODE ENDS

END START

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-06-21
DATA SEGMENT
PARS DB 255 ;准备接收255个字符.
NNN DB ? ;用于存放实际输入的个数.
III DB 255 DUP(?) ;255字节的空间.

MESG1 DB 13, 10, 'INPUT CHAR: $' ;用于提示.
MESG2 DB 13, 10, 'OUTPUT CHAR: $' ;用于提示.

DATA ENDS
;
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START:
MOV AX, DATA
MOV DS, AX

MOV DX, OFFSET MESG1
MOV AH, 9 ;9号功能调用,显示提示.
INT 21H
MOV DX, OFFSET PARS
MOV AH, 10 ;10号功能调用,接收键盘输入.
INT 21H
;---------------------------------------------------
MOV CL, NNN ;收到字符的个数.
MOV CH, 0
LEA SI, III ;收到字符的起始地址.
;----------------------------下面开始循环.
AGAIN:
MOV AL, [SI]
CMP AL, '[' ;- '['
JNC NEXT ;> 'Z'
CMP AL, 'A'
JC NEXT ;< 'A'
OR AL, 00100000B
MOV [SI], AL
NEXT:
INC SI
LOOP AGAIN
;----------------------------循环结束.
MOV BYTE PTR [SI], '$'
MOV DX, OFFSET MESG2
MOV AH, 9 ;9号功能调用,显示提示.
INT 21H
MOV DX, OFFSET III
MOV AH, 9 ;9号功能调用,显示.
INT 21H
;----------------------------显示结束.
MOV AH, 4CH
INT 21H
;============================
CODE ENDS
END START本回答被提问者采纳
第2个回答  2011-06-21
dseg segment
buffer db 255,?,255 dup(0)
dseg ends

eseg segment
buffer2 db 255 dup(?)
cseg segment
assume cs:cseg,ds:dseg,es:eseg
start:
mov ax,dseg
mov ds,ax
mov dx,offset buffer
mov di,buffer2
mov ah,9h
int 21h
mov si,offset buffer+2
mov cl,offset buffer+1
again:
lodsb
add al,20h
stosb
dec cl
jnz again

mov ah,4ch
int 21h追问

运行不对

第3个回答  2021-05-17

第4个回答  2011-06-21
ouhjh9ygukjuhk

用汇编语言编写的程序称为
用汇编语言编写的程序称为源程序。汇编语言:一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。源程序:是指未经编译的,按照一定的程序设计语言规范书写的,人类可读的文本文件。

用汇编语言编写一个程序
使用汇编语言编写程序实现用户登录功能,包含用户名和密码输入与验证。程序通过结构类型定义用户名和密码信息,并实现输出、获取光标位置、设置光标位置、窗口上滚、输入密码以及用户输入错误处理等功能。主要步骤包括初始化环境、输入用户名、验证用户名、输入密码、验证密码、显示欢迎信息和结束程序。程序首先初始...

什么是汇编语言和汇编程序?怎样才能将汇编程序转变为单片机可执行文件...
1. 编写汇编程序:使用汇编语言编写程序源代码,这些源代码包含了各种操作指令和必要的数据定义。2. 汇编过程:利用汇编器(Assembler)将汇编源代码转换为目标文件。目标文件通常包含机器码,这些机器码是单片机可以直接执行的指令。汇编器在这个过程中还会生成一些其他的辅助信息,如符号表等。3. 链接过程(...

与高级语言相比汇编语言编写的程序通常
与高级语言相比,汇编语言编写的程序通常执行效率更高。汇编语言是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,...

汇编语言是采用什么来编写程序的
汇编语言是一种面向机器的程序设计语言,它使用助记符代替操作码,用地址符号或标号代替地址码。助记符是程序员容易记忆的符号,而地址符号或标号是表示内存地址的符号。通过使用这些符号,汇编语言使机器语言变得更易于理解和编写,因此也被称作符号语言。使用汇编语言编写的程序,计算机不能直接执行,因为...

x86单片机用什么语言编程
该设备可以用汇编语言编程。汇编语言是一种低级编程语言,它直接与硬件打交道,可以被单片机直接执行。对于需要优化性能或对硬件有严格控制的程序,汇编语言是必要的选择。汇编语言的编写和维护比C语言更复杂,而且它的可移植性较差。在X86单片机的汇编语言编程中,通常使用特定的汇编器将汇编代码编译成二进制...

计算机能直接识别执行用汇编语言编写的程序吗
用汇编语言编写的程序计算机不能直接识别它。必须先把汇编语言源程序翻译成机器语言程序(称目标程序),然后才能被执行。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。汇编语言的优点:汇编语言作为机器语言之上的第二代编程语言,它也有很多优点:可以轻松的读取存储器...

汇编语言是什么
汇编语言是一种低级编程语言。汇编语言是计算机编程中的一种低级语言。它与计算机硬件紧密相关,使用助记符来表示机器指令的操作类型,如加法、乘法等,同时使用特定的符号或标签代表操作数。编写程序时,开发者需要根据具体的机器架构选择对应的指令,并使用汇编语言将其组合起来,计算机通过解释这些指令序列来...

哪些场合适合用汇编语言编程
面向硬件的编程用汇编语言比较普遍,像单片机之类的就可以用汇编语言来编程,当然了单片机也可以用C语言来编程。通常来说芯片级的编程会用到汇编,C语言是一个跨度的语言,可以在芯片级编程,也可以用做高级语言。其他编程语言大多是高级语言,也就是只能在特定系统下才能使用。

单片机三大编程语言
近年来,随着单片机硬件性能的提升和软件开发工具的进步,C51语言逐渐成为主流。C51是一种结合了C语言和汇编语言特性的编程语言,它既能够利用C语言的简洁和高效,又能够实现对单片机硬件的直接控制。C51语言的出现,使得单片机开发变得更加容易,开发效率大大提高。近年来,Python语言也开始被应用于单片机编程...

相似回答