| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1291 人关注过本帖
标题:怪问题???
只看楼主 加入收藏
dizengrong
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2008-8-25
结帖率:100%
收藏
 问题点数:0 回复次数:6 
怪问题???
下面的这个DOS汇编程序真让人费解,
麻烦高手给看看问题出在哪了。
程序代码:
.model small
.stack 200h    
.CODE
START:
    ;mov     ax,@data
    ;mov     ds,ax
    mov     bl,0ffh
    mov     al,bl
    call     displayBit
    
    ;暂停,任意键关闭
    mov ah,1
    int 21h
    mov ah,4ch     ;结束,可以修改al设置返回码
    int 21h
    
displayBit    proc    ;要显示的8位二进制放在al中
    .386
    pusha
    mov     cx,8
    display:    
            shl     al,1        ;将al的最高位送进CF
            ;push     ax        ;当我不加push ax与pop ax时运行结果就不对, 
            mov     dl,0       ;加了就对了,难道哪条指令改变了al?
            adc    dl,0        
            or    dl,30h    ;转化为ASCII码
            mov    ah,2
            int    21h
            ;pop    ax
    loop    display    
    popa
    ret
displayBit endp
END START
搜索更多相关主题的帖子: Dos汇编 
2008-10-19 11:26
netsolo
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2008-3-6
收藏
得分:0 
int    21h
收到的鲜花
  • zklhp2008-10-19 20:05 送鲜花  10朵  
2008-10-19 16:11
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
[bo][un]netsolo[/un] 在 2008-10-19 16:11 的发言:[/bo]

int    21h


dos里的中断和windows里的api 或其他语言里函数都用ax/eax放返回值 当然会变了

类似的还有win32里的寄存器保护 ecx……

很典型!!!
2008-10-19 20:08
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
说实话 搭眼一看偶也看不出来 呵呵

以后得注意呀 警惕!
2008-10-19 20:09
dizengrong
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2008-8-25
收藏
得分:0 
哦,原来如此啊!
感谢各位啦!并再次谢谢版主zklhp的提醒。
2008-10-19 20:40
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
汇编毕竟不同与高级语言
2008-10-19 21:10
abc976031617
Rank: 1
来 自:西安
等 级:新手上路
帖 子:19
专家分:0
注 册:2011-3-8
收藏
得分:0 
现在还看不懂,不过以后就就不一定了

好好利用资源
2011-03-10 11:22
快速回复:怪问题???
数据加载中...
 
   



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

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