|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 liuhui88126 于 2011-6-30 14:36 编辑
- ;>>>>>>>>>>>>>>>>>>在屏幕8行3列,用绿色显示data段中的字符串>>>>>>>>>>>>>>>>>>>>>>>>
- ;一个窗口最多显示25行,80列,每行就是80个字符,一个字符等于2个字节
- assume cs:code
- data segment
- db 'Welcome to masm!',0
- data ends
- code segment
- start:mov dh,8 ;行
- mov dl,3 ;列
- mov cl,2 ;字符属性
- mov ax,data
- mov ds,ax
- mov si,0
- call show_str
- mov ax,4c00h
- int 21h
- show_str:push cx
- mov al,160
- mul dh ;我的问题在这里,为什么小甲鱼的代码减1了,是显示在第8行,我的没减1,也显示在第8行,为什么?
- ;小甲鱼减1了,不就应该显示在第7行嘛?如果他减1显示在第8行,那我的应该显示在第9行,可为什么
- ;我的也显示在第8行。。。
- mov bx,ax
- mov ax,0b800h
- mov es,ax
- mov di,0
- ck: mov cl,ds:[si]
- mov ch,0
- jcxz ok
- pop cx
- mov ah,cl
- mov al,ds:[si]
- mov word ptr es:6[bx][di],ax
- add di,2
- inc si
- push cx
- jmp short ck
- ok:pop cx
- ret
- code ends
- end start
复制代码
|
|