[問題] CMP的問題

看板ASM (組合語言)作者 (歐歐耶)時間15年前 (2009/11/29 01:13), 編輯推噓4(405)
留言9則, 5人參與, 最新討論串1/1
有一個問題 mov ax ,5h mov bx ,7h cmp ax , bx 為何結果出來CF=1 5 = 00000101B, 7 = 00000111B 我一開始的想法是5-7=5+(-7) 5+(-7) = 00000101 + (-00000111) = 00000101 + 11111001 = 11111110 = -00000010 = -2 這樣的過程感覺是完全沒有進借位的問題 可是如果換一個方法去想 5-7 = 00000101 - 00000111 = (1)00000101 - 00000111 = 11111110 = -00000010 = -2 這樣好像就符合條件了 請問各位這樣的想法是否有誤? -- @Windows Live Examiner 您的狀態設為「逃避現實」,您可以前往參加考試,但教授將知道您完全沒念。 ▁▁▁▁▁▁▁▁ ▁▁▁▁▁ ▁▁▁▁▁▁▁▁ 繼續考試(C) 崩潰(H) 學測報名(G) ψegoweaver▇▇▇▇▇▇▇▇ ▇▇▇▇▇ ▇▇▇▇▇▇▇▇ ψflylitlig -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.165.57.31

11/29 01:20, , 1F
可否先描述一下是何種架構的組語?
11/29 01:20, 1F

11/29 10:45, , 2F
是用windows底下的debug程式跑的 應該是8088/8086吧 @@
11/29 10:45, 2F

11/29 12:25, , 3F
它做的事跟sub很像
11/29 12:25, 3F

11/29 12:54, , 4F
jb = jc 所以?
11/29 12:54, 4F

11/29 12:58, , 5F
有借位所以有CF
11/29 12:58, 5F

11/29 14:52, , 6F
原po把signed加減法跟unsigned搞混了
11/29 14:52, 6F

11/29 14:53, , 7F
在unsigned加減 carry(borrow) = overflow,
11/29 14:53, 7F

11/29 14:53, , 8F
但這在signed算術中並不是這樣
11/29 14:53, 8F

11/29 14:54, , 9F
可看instruction set說明或 ALU design的書
11/29 14:54, 9F
文章代碼(AID): #1B4Leicu (ASM)
文章代碼(AID): #1B4Leicu (ASM)