|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
assume cs:code
code segment
start: mov ax,cs
mov ds,ax
mov si,offset capital
mov ax,0
mov es,ax
mov di,200f
mov cx,offset capitalend-offset capital
cld
rep movsb
mov ax,0
mov es,ax
mov word ptr es:[4*7ch+2],0
mov word ptr es:[4*7ch],200h
mov ax,4c00h
int 21h
capital: push bx
push di
push si
mov ax,0b800h
mov es,ax
mov al,160
mul dh
mov di,ax
mov ax,2
mul dl
add di,ax
s: mov bl,[si]
mov bh,0
cmp bx,0
je ok
mov byte ptr es:[di],bl
mov byte ptr es:[di+1],cl
inc di
loop s
ok: pop si
pop di
pop bx
iret
capitalend: nop
code ends
end start
是的,实验13.1 的源代码和安装程序都被放在同一个 .asm 文件里,并通过 `end start` 来结束程序。该程序首先将 `capital` 段拷贝到内存地址 `200h` 之后的位置,然后设置中断向量表,最后通过调用 INT 21h 中断来退出程序。
|
|