寄存器BP初始值为零,为什么还要手动mov bp,0初始化
代码如下,为什么把第22行的mov bp,0注释掉以后,程序会不一样
assume cs:code,ds:data,es:strackdata segment db 'welcome to masm'data endsstrack segment db 0,0,0,0,0,0strack endscode segment start: mov ax,strack mov ss,ax mov sp,8 mov ax,data mov ds,ax mov ax,0B800h mov es,ax mov bp,0 ;就是她,爱她不容易 mov bx,0 mov cx,3 s: push cx mov bx,0 mov di,0 mov cx,15 s1: mov al,[bx] mov es:[bp][di],al inc bx add di,2 loop s1 add bp,160 pop cx loop s mov bp,0 mov si,1 mov al,11110010b mov cx,15 s2: mov es:[bp][si],al add si,2 loop s2 mov bp,160 mov si,1 mov al,10100100b mov cx,15 s3: mov es:[bp][si],al add si,2 loop s3 mov bp,320 mov si,1 mov al,11110001b mov cx,15 s4: mov es:[bp][si],al add si,2 loop s4 mov ax,4c00h int 21hcode endsend start