|
发表于 2018-1-25 19:33:42
|
显示全部楼层
本帖最后由 cnkizy 于 2018-1-25 21:55 编辑
- assume cs:codesg
- codesg segment
- start:
- mov dx,1
- mov ax,86A1H ;(dx)*10000H+AX=100001
- mov bx,100
- div bx
-
- mov ax,4c00h
- int 21h
- codesg ends
- end start
复制代码
2
1000 01(186A1H) / 100 (64H) = 1000(03E8H) ... 0001(0001H)
- assume cs:codesg
- codesg segment
- start:
- mov dx,1
- mov ax,86A1H ;(dx)*10000H+AX=100001
- mov bx,100H
- div bx
-
- mov ax,4c00h
- int 21h
- codesg ends
- end start
复制代码
4
1000 01(186A1H) / 256 (100H) = 390(0186H) ... 0161(00A1H)
1000 01(186A1H) / 100 (64H) = 1000(03E8H) ... 0001(0001H)
1000 01(186A1H) / 256 (100H) = 390(0186H) ... 0161(00A1H)
100 和 100H 我这边算出来的肯定是有区别的。你仔细看看呢。
上面的是32位被除数 16位除数的计算。
你那个‘换’是啥意思 没能理解到意思呀。
如果是16位除以8位的 那一个 ax就能存下了 不需要dx+ax。al是商 ah是余数 |
|