余数在div操作中的位置(X86 tasm汇编程序)

man*_*ams 0 assembly tasm

以下汇编代码的输出预计为6但是它的结果为3.出了什么问题?

data_seg    segment 
msg1 db "hi",10,13,"$"
msg3 db 26
num db 10
data_seg    ends
code_seg    segment
assume  cs:code_seg, ds:data_seg
start:
        mov ax,data_seg                 ;init
        mov ds,ax

    loop1:
        mov ah,0
        mov al,msg3
        div num
        mov ah,02
        int 21h
    term:   
        mov ah,4ch          ;termination code                       
        mov al,0
        int 21h
code_seg    ends
end start
Run Code Online (Sandbox Code Playgroud)

NPE*_*NPE 6

文档:

累加器的无符号二进制除法.如果源除数是一个字节值,那么AX除以src,商被置于AL中,余数被置于AH中.如果源操作数是字值,则DX:AX除以src,商存储在AX中,余数存储在DX中.