当前位置: 代码迷 >> 汇编语言 >> 小弟我写的王爽实验10.1!错哪了
  详细解决方案

小弟我写的王爽实验10.1!错哪了

热度:9216   发布时间:2013-02-26 00:00:00.0
请教大家我写的王爽实验10.1!哪里错了!
题目:关于在指定位置,用指定的颜色,显示一个用0结束的字符串
--------------
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 ax
  push dx
  push es
  push bx
  push di
  push si
  push cx
  mov al,0ah
  dec dh
  mul dh
  add ax,0b800h
  mov es,ax
  mov al,2
  dec dl
  mul dl
  mov ah,0
  mov bx,ax
  mov di,0
  s:mov cl,[si]
  mov ch,0
  jcxz ok
  pop cx
  mov al,[si]
  mov es:[bx+di],al
  mov es:[bx+di+1],cl
  add di,2
  inc si
  jmp short s
 ok:pop cx
  pop si
  pop di
  pop bx
  pop es
  pop dx
  pop ax
  ret
code ends
end start
-------------
就这个程序,另外有什么写汇编语言可以加注释的软件啊?我一直用的cmd edit 的命令,没发注释,有事总要看一会儿!

------解决方案--------------------------------------------------------
五颜六色的,你把字符同时也作为显示属性填入了显示缓冲区,当然就色彩缤纷了。将那个 mov es:[bx+di+1],cl 指令改为 mov byte ptr es:[bx+di+1], 7 就是通常的黑底白字了。
  相关解决方案