看板 [ ASM ]
討論串[問題] 請問有人懂PowerPC ASM的嗎?
共 4 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓1(1推 0噓 0→)留言1則,0人參與, 最新作者ccbruce (蛍雪時代にの僕)時間17年前 (2007/07/14 02:20), 編輯資訊
1
0
0
內容預覽:
有個很奇怪的現象,不知道有沒有人能不能做個說明:. 在x86上面,我很習慣用a^=b^=a^=b做變數的交換,但是在PowerPC上使用,卻得到奇怪的結果:如果只是交換兩個變數,那一切正常;但若是交換兩個間接定址的變數內容,卻會得到奇怪的答案,有人可以解釋一下嗎?. 原始的C如下:. #includ
(還有2830個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者roylee17 (把我id還我阿......)時間17年前 (2007/07/14 04:10), 編輯資訊
1
0
0
內容預覽:
a' = a XOR b. b' = a' XOR b = b XOR a XOR b = a. // 所以你的 b 是沒問題的. a'' = a' XOR b' = a XOR b XOR a = b. // 這是你預期的情況. a'' = a XOR b' = a XOR a = 0. // 這
(還有214個字)

推噓-1(1推 2噓 0→)留言3則,0人參與, 最新作者ccbruce (蛍雪時代にの僕)時間17年前 (2007/07/14 15:37), 編輯資訊
1
0
0
內容預覽:
對於此用法的邊際效用及實際機器碼轉譯我非常的清楚,我並不需要這種說明。. 事實上,這種方式只要考慮^=的結合性,它是由右至左。考慮到較佳的作法,自然就要轉譯為類似以下的x86機器碼(實際上也是),而非你講的另起變數:. .... mov AX, varA. mov BX, varB. xor AX,
(還有118個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者roylee17 (把我id還我阿......)時間17年前 (2007/07/14 16:07), 編輯資訊
0
0
0
內容預覽:
movl -24(%ebp), %ecx lwz 11,16(31). movl -20(%ebp), %ebx lwz 10,20(31). movl -24(%ebp), %edx lwz 9,16(31). movl -20(%ebp), %eax lwz 0,20(31). xorl %ed
(還有357個字)
首頁
上一頁
1
下一頁
尾頁