8086汇编语言(16位)上机考试真题与答案

需积分: 0 6 下载量 113 浏览量 更新于2023-11-24 1 收藏 57KB DOCX 举报
8086汇编语言(16位)上机考试真题 1. 输入一个字符串,将其中 A 换成 CC,并将结果显示在屏幕上。 ```assembly DATAS SEGMENT buf db 100 db ? db 100 dup(?) replace db 'C' output db 100 dup(?) Stop db '$' DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX lea dx,buf mov ah,0AH int 21H ;输入字符串 lea si,buf + 1 ;si 指向字符串长度 mov cx,[si] mov ch,0 lea di,output ;di 指向输出空间 repeat_loop: ;依次读取字符,判断字符是否为 A mov al,[si 1] ;si 指向字符串首字符 cmp cx,0 je end_loop cmp al,'A' jne copy_char mov bl,replace ;将 A 替换为 CC mov [di],bl inc di mov [di],bl jmp oo copy_char: ;复制字符 mov [di],al oo: inc si inc di loop repeat_loop end_loop: ;结束循环,输出 mov bl,Stop mov [di],bl lea dx,output mov ah,09H int 21H MOV AH,4CH INT 21H CODES ENDS END START ``` 以上是一道8086汇编语言(16位)上机考试真题,要求输入一个字符串,将其中的A替换为CC,然后显示在屏幕上。程序首先定义了数据段和堆栈段,然后通过int 21H调用实现了输入字符串的功能。接着利用循环逐个读取字符,判断是否为A,若是,则将其替换为CC,最后输出结果并结束程序。 另外还包含16道8086汇编语言上机考试真题和答案,感兴趣的可以通过相关渠道获取。