我有這樣的代碼添加16位寄存器
addInt:
add cx, bx
cmp cx, 0FFFFh
JBE convert
我想補充CX和BX寄存器,每個有FFFF
相同的值,而不是讓1FFFE
,我只得到FFFE
,當我嘗試使用JBE
跳轉到循環,JBE istruction不做任何事情,因爲ecx
現在註冊只包含FFFE
,但不包含1FFF
,所以我該如何解決此代碼,使ecx
包含1FFFE,我如何比較以檢查它是否仍然是16或不是。我不能使用任何32位寄存器,這使得事情更加複雜
預先感謝
一個16位的寄存器可以包含的最大值是'FFFF' .. – Blorgbeard
爲什麼你不能使用32位寄存器? (如果你使用'ecx',這會容易得多。) – michaelb958
如果你在'add'指令後面檢查'FLAGS'中的'OF'(溢出標誌),它可能會有所幫助。 –