| 网站首页 | 业界新闻 | 群组 | 人才 | 技术文章 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 460 人关注过本帖
标题:简单加法
只看楼主 收藏
鱼儿海
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:194
注 册:2013-8-14
结帖率:100%
  已结贴   问题点数:10  回复次数:2   
简单加法
start:
    mov ax,datas
    mov dx,ax
    mov  al,5
    add al,3
    add al,30h
    mov dl,al
    mov ah,2
    int  21h
    mov ah,4ch
    int 21h
麻烦解释一下,本来3+5加法,要add al,30h
mov dl,al mov ah,2有什么用,没有怎么就
不行,我用的是masm for windows编译器
w7的64系统
2017-07-24 12:27
Valenciax
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:10
帖 子:161
专家分:933
注 册:2016-5-15
  得分:10 
加后,结果在al, = 8
这个8只是一个值, 显示结果必须转换作ascii码(不明白ASCII是什么请回去看看书)
数字0-9的ascii码是30h-39h,所以加30h就是将数值转为ascii码
透过dos函数
mov dl,al ;显示字符的ascii码
mov ah,2 ;显示字符
int 21h ;dos函数
就可以显示结果.
2017-07-27 06:33
鱼儿海
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:194
注 册:2013-8-14
  得分:0 
谢谢
2017-07-31 22:00







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.080787 second(s), 9 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved