小编Yar*_*inB的帖子

低音域和高域是否交换了位置?

IDEAL
MODEL small
STACK 100h
jumps
p186
DATASEG

array dw 312, 340, 311, 300

CODESEG
proc example
    pusha
    mov al ,4 ;number of elements in array
    mov bl, 0 ;index
    label1:
    mov cx, [array + bx] ;here, every second element ch and cl are swapped
    inc bl
    cmp bl, al
    jb label1
    popa
    ret
endp example

start:
    mov ax, @data
    mov ds, ax
    
    call example
exit:
    mov ax, 4c00h
    int 21h
END start
Run Code Online (Sandbox Code Playgroud)

在我的汇编代码中,cx在第一次和第三次迭代中没问题,但在第二次和第四次迭代中由于某种原因clch相互交换了它们的值。我真的对此不知所措,希望得到一些帮助,谢谢!

arrays x86 assembly loops cpu-registers

1
推荐指数
1
解决办法
53
查看次数

标签 统计

arrays ×1

assembly ×1

cpu-registers ×1

loops ×1

x86 ×1