【问题标题】:the Cmp operation doesn't workCmp 操作不起作用
【发布时间】:2014-05-30 16:48:29
【问题描述】:

我比较数字时遇到问题。代码是:

cmp edx,[numeroIterazioniColonna]
    je aggiorna
inc edx

在 [numeroIterazioniColonna] 中有值 4.0 而在 edx 中有值 0 但是当我的应用程序启动时条件永远不会为真。谁能帮帮我?

【问题讨论】:

  • 整个循环是什么样子的?
  • 4.0?你的意思是它是一个浮点值? cmp 是一个整数运算,因此它不适用于浮点值。另外,为什么你认为 4.0 和 0 是相等的?
  • @michael 你建议我可以使用哪个操作?我试着写一个循环!
  • 比较浮点数比看起来要复杂得多(尝试谷歌搜索:比较浮点数)。如果没有看到整个循环(Joachim 已经要求并且您没有提供),我们只能猜测您正在尝试做什么。由于 numeroIterazioniColonna 听起来像是某种迭代计数器,我猜想将其更改为 int。

标签: assembly assemblies inline-assembly


【解决方案1】:

整数值:

numeroIterazioniColonna DB 4,0,0,0 

      mov edx,0
P1:   cmp edx,[numeroIterazioniColonna]
      je short aggiorna
      inc edx
      jmp P1

aggiorna:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2015-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多