[問題] 旗標的問題
最近在學組語
老師叫我們回家寫一個程式使 進位、溢位、符號、零值旗標改變
我的程式是個別的改變旗標
例:
=============================
(第一段程式)
CF=1 SF=0 ZF=0 OF=0
(第二段程式)
CF=0 SF=1 ZF=0 OF=0
(第三段程式)
CF=0 SF=0 ZF=1 OF=0
(第四段程式)
CF=0 SF=0 ZF=0 OF=1
=============================
我不瞭解的是為什麼我的程式執行到第二段的時候CF會變回0
有沒有辦法做到下列的情況呢?
=============================
(第一段程式)
CF=1 SF=0 ZF=0 OF=0
(第二段程式)
CF=1 SF=1 ZF=0 OF=0
(第三段程式)
CF=1 SF=1 ZF=1 OF=0
(第四段程式)
CF=1 SF=1 ZF=1 OF=1
=============================
在此附上我的程式碼
.data
myname BYTE '我的名字'
value1 word 0ffffh
value2 word 0h
.code
main PROC
mov edx,0
mov edx, OFFSET myname
call WriteString
add value1, 2h ;CF改變
call DumpRegs
call waitMsg
add value2, 8001h ;SF改變
call DumpRegs
call waitMsg
mov eax, 10000h
sub eax, 10000h ;ZF改變
call DumpRegs
call waitMsg
mov al, -128
sub al, 1 ;OF改變
call DumpRegs
call waitMsg
exit
main ENDP
End main
--
新手發問,請多多指教
我會虛心的接受的
感恩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.124.137.191
→
10/31 13:07, , 1F
10/31 13:07, 1F
→
10/31 13:07, , 2F
10/31 13:07, 2F
討論串 (同標題文章)
ASM 近期熱門文章
PTT數位生活區 即時熱門文章