看板 b94902HW 關於我們 聯絡資訊
組語常常遇到莫名奇妙的bug,我剛剛試了一下 發現如果你用變數去當作pointer的時候,會有莫名奇妙的錯誤 (不要問我是啥,我也不知道) 所以大家還是乖乖用register當pointer吧 好痛苦... 譬如說 mov ecx, 0 mov edx, input mov ebx, map loop1: movzx eax, byte ptr [edx] mov dword ptr [ebx], eax add ebx, 4 inc edx inc ecx cmp ecx, w jl loop1 和 mov ecx, 0 mov eax, input mov i, eax mov ebx, map loop1: movzx eax, byte ptr [i] mov dword ptr [ebx], eax add ebx, 4 inc i inc ecx cmp ecx, w jl loop1 感覺應該要得到一樣的結果,但是後面就是會有錯Orz -- Looking for the place where a heart feels at ease. Then, aim at the new future. While it doesn't know, scene changes someday, and very warm wind will blow in place. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.253.24 ※ 編輯: mimi9126 來自: 140.112.253.24 (12/10 23:48)
purincess:mov eax, i 跟 mov eax, [i]意義是一樣的, 課本投影片都 12/10 23:57
purincess:有 12/10 23:57
kcir:我也遇到了這鳥bug 害我卡好久...orz 12/11 00:02
astralbeams:同上 12/11 00:58
mifan:所以平常還是乖乖用 mov eax, [i] 以免搞混? 12/11 18:52
LittleCVR:因為課本有說是mem的話省略中括號是"約定俗成" 12/12 00:28
LittleCVR:所以i和[i]是一樣的, reg的話就不一樣了 12/12 00:29