首页
社区
课程
招聘
[旧帖] [求助]程序错在哪,帮忙看看。 0.00雪花
发表于: 2009-2-3 15:29 3217

[旧帖] [求助]程序错在哪,帮忙看看。 0.00雪花

2009-2-3 15:29
3217
assume cs:code,ds:data,ss:stack
data segment
        db 'Welcome to masm!'
        db 2h,24h,71h       
data ends

stack segment
        dw 8 dup (0)
stack ends

code segment
start:        mov ax,0b800h
        mov ds,ax
        mov ax,data
        mov es,ax
        mov bp,10h;控制颜色的数据偏移地址
        mov cx,3;三行
        mov ax,stack
        mov ss,ax
        mov sp,10h
        mov bx,6e0h;ds中间行偏移地址
    s1:        push cx
        mov di,0;控制字符数据的偏移地址
        mov si,3fh;存放数据的起始位置
        mov cx,16
    s2:        mov al,es:[di]
        mov [bx+si],al
        inc si
        mov al,es:[bp]
        mov [si+bx],al
        inc si
        inc di
        loop s2
        pop cx
        inc bp
        add bx,160
        loop s1

        mov ax,4c00h
        int 21h
code ends

end start

按照要求,程序运行后应该显示前者,以上代码却显示后者。请教怎么回事.

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 100
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
怎么没人肯帮个忙啊。。。。。
拜托了。。。。。
2009-2-3 15:52
0
雪    币: 293
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
[QUOTE=KaitoKID;572792]

s2:  mov al,es:[di]
  mov [bx+si],al

  inc si
  mov al,es:[bp]
  mov [si+bx],al

  inc si
  inc di
  loop s2

[/QUOTE]

看你的贴图,应该是红色和蓝色写反了
2009-2-3 17:00
0
雪    币: 100
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
是啊,还真写反了。。。
十分感谢。
2009-2-3 17:21
0
雪    币: 100
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
找到最主要的原因啦,是我算错起始位置了。应该是奇数地址存放颜色数据,我写成偶数了。。
太感谢你了,没有你的指点我还真没发现。
2009-2-3 17:34
0
雪    币: 293
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
照猫画虎,我也学习了一下。

上传的附件:
2009-2-3 17:54
0
雪    币: 121
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
7
看不懂阿 ,传说中的汇编吗,
2009-2-4 08:48
0
雪    币: 100
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
不是传说中的,是基础的汇编。。。。
2009-2-4 11:15
0
游客
登录 | 注册 方可回帖
返回
//