求助呀,乱码乱码
时间:2010-12-05
来源:互联网
我水平不怎么高,搞得现在输出有点乱码,呃,请高手给看看
题目:从键盘输入4个十进制数字,依次保存在以DATA1为首的连续5字节内存单元的前4个单元中(先输入的在前,为高位),作为一个四位的十进制数乘以9后,结果保存在以DATA1为首的连续5字节内存单元中,然后在屏幕上以十进制方式显示出该运算结果。
我的程序如下:
data segment
data1 db 5,0,6 dup(?)
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
lea dx,data1
mov ah,0ah
int 21h
mov cx,4
mov di,offset data1+2
re: mov al,[di] ;使得数字向前移动一位
mov [di-1],al
inc di
loop re
mov di,offset data1+4
mov bl,09h
mov cx,4
mov bh,30h
again: mov al,[di] ;核心代码
and al,0fh
mul bl
aam
add al,30h
add al,bh
aaa
mov [di],al
add ah,30h
mov bh,ah
dec di
loop again
mov [di],ah
mov byte ptr[data1+6],'$'
lea dx,data1 ;显示模块
mov ah,09h
int 21h
mov ah,4ch
int 21h
code ends
end start
题目:从键盘输入4个十进制数字,依次保存在以DATA1为首的连续5字节内存单元的前4个单元中(先输入的在前,为高位),作为一个四位的十进制数乘以9后,结果保存在以DATA1为首的连续5字节内存单元中,然后在屏幕上以十进制方式显示出该运算结果。
我的程序如下:
data segment
data1 db 5,0,6 dup(?)
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
lea dx,data1
mov ah,0ah
int 21h
mov cx,4
mov di,offset data1+2
re: mov al,[di] ;使得数字向前移动一位
mov [di-1],al
inc di
loop re
mov di,offset data1+4
mov bl,09h
mov cx,4
mov bh,30h
again: mov al,[di] ;核心代码
and al,0fh
mul bl
aam
add al,30h
add al,bh
aaa
mov [di],al
add ah,30h
mov bh,ah
dec di
loop again
mov [di],ah
mov byte ptr[data1+6],'$'
lea dx,data1 ;显示模块
mov ah,09h
int 21h
mov ah,4ch
int 21h
code ends
end start
作者: jackzero0 发布时间: 2010-12-05
add al,30h
add al,bh
aaa
把add al,30h放在aaa后,因为aaa把al的高4位变0了。
add al,bh
aaa
把add al,30h放在aaa后,因为aaa把al的高4位变0了。
作者: shzhfu 发布时间: 2010-12-06
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28