| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 973 人关注过本帖
标题:大家看看这个程序哪儿有问题!!!!!
只看楼主 加入收藏
闭眼到天黑
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2011-2-20
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:16 
大家看看这个程序哪儿有问题!!!!!
程序代码:
 assume cs:code,ds:data,ss:stack
        data segment
                db'welcome to masm!'
                db 00000010b,00100100b,01110001b
        data ends
        stack segment
                dw 0,0,0,0,0,0,0,0
        stack ends
        code segment
       start: mov ax,data
              mov ds,ax
              mov ax,stack
              mov ss,ax
              mov sp,0010h
              mov bx,0000h
              mov ax,0b800h
              mov es,ax
              mov ax,0
              mov di,0010h
              mov cx,3
         s:   push cx
              mov cx,16
              mov si,0
         s0:  mov al,ds:[si]
              mov ah,ds:[di]
              mov es:[bx+07b6h],ax
              inc si
              add bx,2
              loop s0
              inc di
              pop cx
              loop s
              mov ax,4c00h
              int 21h
         code ends
         end start
王爽的汇编语言一书中实验九的程序说是在屏幕上显示不同颜色的字,这是我写的,但是运行后屏幕上没有正确显示!请各位看一下!

[ 本帖最后由 闭眼到天黑 于 2011-3-2 22:07 编辑 ]
2011-03-01 22:31
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:5 
没有dos环境,没法给你测试,这是我以前写的。你参考一下。
 
程序代码:

 assume  cs:code,ds:data 

 data    segment 
         db      'welcome to masm!' 
         db      02h,24h,71h 

 data    ends 

 code    segment 

 start: 
         mov ax,data                ;指定数据段DS 
         mov ds,ax 
         mov ax,0b800h              ;显示区域为附加段ES 
         mov es,ax 
         mov di,780h                ;ES:DI起始行 
         mov bx,10h                 ;颜色属性,地址为:DS:[BX] 
         mov cx,3                   ;3个颜色 

 a:                                 ;外循环对3中颜色循环, 依次是02,24h,71h 
         push cx                    ;由于内循环要用到cx,故保存 
         push di                    ;保存初始行 
         mov si,0字符首地址ds:si 
         mov cx,16                  ;内循环开始,依次遍历16个字符 

 b:      mov al,[si]                ;将asacii放入al 
         mov ah,[bx]                ;将属性放入ah 
         mov es:[di+40h],ax         ;显示 
         inc si                     ;指向下一个字符 
         add di,2                   ;指向下一个显示位置 
         loop b                     ;如cx=0,则内循环结束 
         pop di                     ;第一次循环结束,恢复初始行的值 
         pop cx                     ;恢复cx 
         inc bx                     ;ds:[bx+1],指向下一个属性 
         add di,0a0h                ;第二行 
         loop a                     ;外循环,如3个属性遍历完毕则跳出循环 

 
         mov ah,4ch 
         int 21h 

 code    ends 

 end     start

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-03-01 23:34
闭眼到天黑
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2011-2-20
收藏
得分:0 
回复 2楼 ansic
现在去上课,没办法测试,谢了,不过上完课我会好好看看的,不过哥们儿真是在哪儿都能碰见你啊!

淫荡成就梦想,猥琐引领时尚!
2011-03-02 07:02
闭眼到天黑
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2011-2-20
收藏
得分:0 
想问一下是不是不同的CPU你要想输出的内容要写入不同的内存地址,求解!!!

淫荡成就梦想,猥琐引领时尚!
2011-03-02 07:03
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
以下是引用闭眼到天黑在2011-3-2 07:03:55的发言:

想问一下是不是不同的CPU你要想输出的内容要写入不同的内存地址,求解!!!

别的不知道,基于X86cpu的显存地址基本都一样

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-03-02 10:27
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
以下是引用闭眼到天黑在2011-3-2 07:02:17的发言:

现在去上课,没办法测试,谢了,不过上完课我会好好看看的,不过哥们儿真是在哪儿都能碰见你啊!

嘿嘿, 去年学的汇编, 今年开始学C,。。。。

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-03-02 10:28
闭眼到天黑
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2011-2-20
收藏
得分:0 
以下是引用ansic在2011-3-2 10:28:44的发言:

 
嘿嘿, 去年学的汇编, 今年开始学C,。。。。
我是先学的C++然后学的C,现在在学汇编!

淫荡成就梦想,猥琐引领时尚!
2011-03-02 13:27
zaixuexi
Rank: 12Rank: 12Rank: 12
来 自:上海
等 级:火箭侠
威 望:8
帖 子:858
专家分:3233
注 册:2010-12-1
收藏
得分:5 
程序没问题,在DEBUG执行

技术问题,请不要以短消息方式提问
2011-03-02 14:32
闭眼到天黑
Rank: 2
等 级:论坛游民
帖 子:37
专家分:15
注 册:2011-2-20
收藏
得分:0 
以下是引用zaixuexi在2011-3-2 14:32:06的发言:

程序没问题,在DEBUG执行
可是DOS界面上没法儿显示我想要的结果,程序运行后屏幕上什么都没有,是为什么呢!

淫荡成就梦想,猥琐引领时尚!
2011-03-02 16:23
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:5 
图片附件: 游客没有浏览图片的权限,请 登录注册
2011-03-02 21:38
快速回复:大家看看这个程序哪儿有问题!!!!!
数据加载中...
 
   



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

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