8086汇编语言键盘输入10个数将ascii码放入string
时间: 2023-07-26 08:27:57 浏览: 44
好的,您的问题是关于8086汇编语言的。如果您想要实现键盘输入10个数,并将它们的ASCII码存放在一个字符串中,可以使用如下的汇编代码实现:
```
DATA_SEG SEGMENT
inputMsg db 'Please enter a number: $'
outputMsg db 'ASCII codes: $'
num db 10 ; 数字的个数
asciiString db 20 ; 存放ASCII码的字符串
input db 2 ; 存放输入的数字
DATA_SEG ENDS
CODE_SEG SEGMENT
ASSUME CS:CODE_SEG, DS:DATA_SEG
START:
; 初始化数据段寄存器
mov ax, DATA_SEG
mov ds, ax
; 输出提示信息
mov ah, 9h
lea dx, inputMsg
int 21h
; 循环10次,读取输入的数字并计算其ASCII码
mov si, 0 ; si 存放字符串偏移量
mov cx, num
loopStart:
; 读取输入的数字
mov ah, 1h
int 21h
; 将输入的数字转换成ASCII码并存放在字符串中
add al, 30h ; 将数字转换成ASCII码
mov byte ptr asciiString[si], al
inc si
; 输出空格
mov ah, 2h
mov dl, ' '
int 21h
loop loopStart
; 输出ASCII码字符串
mov ah, 9h
lea dx, outputMsg
int 21h
mov ah, 9h
lea dx, asciiString
int 21h
; 退出程序
mov ah, 4ch
int 21h
CODE_SEG ENDS
```
这个程序首先定义了一些数据,包括提示信息、数字的个数、ASCII码字符串等,然后使用一个循环读取并计算10个数字的ASCII码,将它们依次存放在一个字符串中,最后输出这个字符串。您可以将这个程序保存在一个文件中,然后使用汇编器将其编译成可执行文件。