【问题标题】:8086 assembly - divide overflow8086 汇编 - 除法溢出
【发布时间】:2012-08-27 21:02:04
【问题描述】:

我尝试在汇编中进行简单的除法,但出现“除法溢出”错误。

我的简单代码: cs:sum 和 cs:num 是一个字节变量。 (分贝)

    mov ax, word ptr cs:sum
mov cl, 10
xor dx,dx
div cl ; divide by 10
mov cs:num, ah ; ger rightest

不知道为什么 - 但正如我所说 - 我没有正确分配。

那么你知道这个问题是什么以及如何解决它吗?谢谢!

(我使用 cs 尊重,因为那是一个 TSR 程序)

【问题讨论】:

  • 一个 TSR ?你在为博物馆展览做点什么吗?
  • 我根本没有使用汇编。我正在准备考试..=\

标签: assembly x86 x86-16


【解决方案1】:

为此导致除法异常

mov ax, word ptr cs:sum
mov cl, 10
div cl

ax(来自word ptr cs:sum)中的值必须>= 2560。

word ptr cs:sum 不是 word ptr cs:sum 中或从那里获取它(例如,您在引用时没有使用相同的段值sum)。

这些是唯一的可能性。

【讨论】:

  • 我已经解决了。因为你的答案是最好的 - 我会唱这个答案作为接受。谢谢你。顺便说一句 - C FTW!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-25
相关资源
最近更新 更多