decoder 发表于 2014-5-19 10:24:13

第十章实验10,求高人指点迷津

本帖最后由 decoder 于 2014-5-19 10:30 编辑

assume cs:code
data segment
   
   db 'Welcome to masm!',0

data ends


code segment


   
   start: mov dh,8   ;行循环
          mov dl,3   ;列循环
                  mov cl,2   ;cx_0颜色值
                  mov ax,data ;把data的地址值给ax
                  mov ds,ax ;ds:0->data
                  mov si,0;ds:si->data
                  mov bx,0
                  callshow_str
                  
                  mov ax,4c00h
                  int 21h
show_str:                                        ;mov bp,sp
                                                       ; push dx;sp=sp-2此时bp与sp相差2   
                                                       ;push cx   ;保存颜色值 此时bp与sp相差4 疯了
                  mov ax,0b80ah
                  mov es,ax
                  mov di,10h
                  mov bx,0
                  call printcol
                  
                  
ret
display:      mov cx,10h;cx=16
               mov si,0
                                                       ;mov ax,ss:;此处索引颜色值
smem:   push ds:
                pop es:            ;打入字符
                mov byte ptr es:,2         ;打入颜色无奈
                xor ax,ax
                inc si
                add di,2
                  
    loop smem
ret

printline:                                          ;mov dx,ss: ;索引列循环
                mov cx,3                              ;此处编译器让人很无奈,用Dl赋值就是不行
                                                       ;mov dx,0
      line:   push cx
            call display
               add bx,16                      ;填充空格
               pop cx
                  
loop line         
ret
printcol:                                          ;mov dx,ss:               ;索引行循环
             mov cx,8                              ;此处编译器让人很无奈,用Dh赋值就是不行
printf:   push cx
             call printline
             add di,176                        ;换行
             pop cx
               
loop printf
ret
code ends
end start      
在栈中索引出错,一直无法正确执行,求高人指点一二

decoder 发表于 2014-5-19 10:59:01

本帖最后由 decoder 于 2014-5-19 11:00 编辑

原来是我没理解题意,这样说来就简单了…… 但是用栈索引的问题还是没有解决,有没有高人可以指点一下呀?
页: [1]
查看完整版本: 第十章实验10,求高人指点迷津