一段简单的代码:
.model small
.stack 10
.data

value_one   db 0
value_two   dw 0
value_three dd 0
value_four  db "Everybody"
value_five  db 3 dup("!")

video_segment dw 0B800h

.code

main proc
  mov ax,seg value_one
  mov ds,ax
  
  mov es,[video_segment]
  
  mov [value_one],"H"
  mov byte ptr [value_two],"e"
  mov byte ptr [value_two+1],"l"
  mov byte ptr [value_three],"l"
  mov byte ptr [value_three+1],"o"
  mov word ptr [value_three+2],2020h
  
  lea di,value_four
  inc byte ptr [di]
  
  xor di,di
  lea si,value_one
  mov cx,19
  mov ah,07h
  cld
  
print_loop:
  lodsb
  stosw
  loop print_loop
  
  mov ax,4c00h
  int 21h
main endp
end main
可是怎么搞就是说有错误,用masm32说有错,用emu8086也说有错,奇怪的是他们说的错误不一样,请问问题是什么呢?