等雨 发表于 2012-2-29 19:34:15

实验十二的问题

红色字体是我没有写的代码,,为什么还能正常运行啊,求解释,

实验12 编写0号中断的处理程序(第240页)

-------------------------------------

完整程序如下:

assume cs:code

   

code segment

start:

      mov ax,cs

      mov ds,ax

      mov si,offset do0                  ;设置ds:si指向源地址

      mov ax,0

      mov es,ax

      mov di,200h                        ;设置es:di指向源地址

      mov cx,offset do0end - offset do0;设置cx为传输长度

      cld                              ;设置传输方向为正

      rep movsb

   

      ;mov ax,0

      ;mov es,ax                                                         ;这里我没有写

      mov word ptr es:,200h       ;设置中断向量的入口地址的偏移地址

      mov word ptr es:,0      ;设置中断向量的入口地址的段地址

         

      mov ax,0f000h

      mov dx,22d

      mov cx,10d

      div cx                           ;此4句是为了做个溢出的除法

   

      mov ax,4c00h

      int 21h

         

   

do0:    jmp short do0start

      db "divide error!"

do0start:         

      mov ax,cs

      mov ds,ax

      mov si,202h                      ;设置ds:si指向字符串

      mov ax,0B800h

      mov es,ax

      mov di,12*0A0h+2*32            ;设置es:di指向显存空间的中间位置

   

      mov cx,13d                     ;设置字符串长度

s:      mov al,

      mov es:,al

      inc si

      add di,2

      loop s

   

      mov ax,4c00h

      int 21h

do0end: nop

   

code ends

end start

梦想飞扬 发表于 2012-3-1 11:34:02

es之前已经定义过了的
页: [1]
查看完整版本: 实验十二的问题