汇编网首页登录博客注册
hitlerdsaf的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
好友圈
文章收藏
友情链接

[2011-10-11 15:45] 实验九

图片载入中
assume cs:codesg

datasg segment
    db 'welcome to masm!'                     ;the charactor to be showed
    db 00000010B,00100100B,01110001B          ;the forcolor and the backcolor
datasg ends

codesg segment
start:
    mov ax,datasg
    mov ds,ax
    mov ax,0B800h
    ;;160 bytes per line, 160*12=780H
    add ax,078H
    mov es,ax
    mov bx,0
    ;;160-16=144/2=72=48H
    mov bp,048h
    mov cx,16
s:  mov al,[bx]
    mov es:[bp],al
    mov es:[bp+160],al
    mov es:[bp+320],al
    inc bp
    mov al,ds:[16]
    mov es:[bp],al
    mov al,ds:[17]
    mov es:[bp+160],al
    mov al,ds:[18]
    mov es:[bp+320],al
    inc bp
    inc bx
    loop s
    mov ax,4c00h
    int 21h
codesg ends
end start

希望哪位兄弟帮忙解答一个疑问
mov al,ds:[16]
mov al,ds:[17]
mov al,ds:[18]
此三句如果不添加ds: 结果会不同,百思不得其解

如果附加了结果正常
评论次数(1)  |  浏览次数(221)  |  类型(汇编作业) |  收藏此文  | 

[  游客   发表于  2011-10-31 00:12  ]

如果不加ds:就是相当于一下的语句
mov al,16
mov al,17
mov al,18
而不是用了数据段中的内容。
具体的看一下课本5.4
如不对请指点,谢谢

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码