x86-64

    -1熱度

    1回答

    我遇到了一個錯誤,而調試我的程序,甚至閱讀彙編代碼 下面是從GDB的圖像後,我解決不了,0x4070a1之前,%RDX是0x61b130,並且這個數字應該移到-0x18(%rbp)。但是,在這個指令之後,我發現-0x18(%rbp)變成了0x61b7d0,這讓我感到困惑。 由於這個問題,我的程序無法正常運行,誰能告訴我原因?謝謝! 的C代碼: E_enventry t = E_FunEntry(l

    0熱度

    1回答

    我正在使用庫SwipeCellKit,並且自從更新到Xcode 9.1後出現問題。我用Xcode 9.1重新編譯了這個庫,並在我的項目中重新導入了.framework。但我仍然無法使用庫中的類。我得到這樣的警告: ld: warning: ignoring file /Users/.../Frameworks/SwipeCellKit/SwipeCellKit.framework/SwipeCel

    0熱度

    1回答

    這是多麼幸運的是,所有的使用學習計算機編程的藝術可以訪問一個社區,如堆棧溢出!我已經決定承擔學習如何編程計算機的任務,並且我通過一本名爲「從頭開始編程」的電子書的知識來完成這項任務,該教程告訴讀者如何使用匯編語言編寫程序在GNU/Linux環境中。 我在本書中的進展已經到了創建一個程序,該程序使用一個函數來計算整數4的階乘,我已經完成並且沒有由GCC的彙編程序引起的任何錯誤,或者由運行程序。但是,

    -1熱度

    2回答

    我正在寫,應該是能夠將大量的數據寫入到磁盤的UEFI應用更多的時候寫的崩潰。 我知道的FAT - 32文件大小的限制和每個目錄等文件的數量,這應該不是問題。我試着寫存儲區UND我可以讀/寫它沒有問題,但一定量的數據後,我的虛擬機只是重新啓動沒有任何錯誤消息標誌着內存映射爲可用。 將以下代碼行的問題: uefi_call_wrapper(handle->Write, 3, handle, size,

    0熱度

    1回答

    我試圖將我的C代碼轉換爲x86-64。我的目標是扭轉鏈接列表。傳入的兩個參數是頭部ptr和偏移量以獲取指針字段的地址(即指向列表中下一個節點的指針)。 據我所知,頭ptr通過rdi寄存器傳入,偏移量通過rsi寄存器傳入。當它到達「mov rcx,[rbx]」行時,我不斷收到分段錯誤。「只有「mov rcx,rbx」並且後面的行從「mov [rbx],rdx」更改爲「mov rbx,rdx」時,分段

    1熱度

    1回答

    我在Fedora 26,x86_64上構建一些基於Autotool的庫時遇到問題。 64位Fedora將第三方和供應商庫放在/usr/local/lib64中。 Ubuntu 17使用/usr/local/lib,所以相同的項目構建好。 我一直在使用--libdir=/usr/local/lib64但三個庫抵制它。 /usr/local我缺少config.site,所以我想添加一個。在討論usr/

    3熱度

    1回答

    我有二進制階段是不返回所需的結果,即12。 階段4 Dump of assembler code for function phase_4: 0x000000000040100b <+0>: sub $0x18,%rsp 0x000000000040100f <+4>: lea 0x8(%rsp),%rcx 0x0000000000401014 <+9>: le

    1熱度

    1回答

    我,我們這樣做是爲了類簡單的64位彙編程序。它應該接受用戶輸入(字符串)並將小寫字母的字符串返回成大寫和小寫。 與我有什麼,它會直到它找到一個空間讀取任何東西,這會不會以後再閱讀。所以如果我輸入「test」,它會輸出「TEST」。如果我輸入「Test Test」,它會輸出「TEST」。但是,如果我在第一個單詞之前添加空格,它會輸出第一個單詞但刪除空格。例如:輸入「TesT」,輸出:「tESt」。

    1熱度

    2回答

    我看彙編代碼看起來像這樣: addl %eax, -8(%rbp) 我知道寄存器%eax中有一個值,但-8(%RBP)尚未到這條線之前感動。我是否認爲它是空的,並且會將%eax + 0的值放入-8(%rbp)?

    1熱度

    1回答

    下面的代碼假設有顯示如果哪個數字更大或者它們是否相等和總和,但我得到的只是總和,如果我刪除了總和部的第一部分,其中顯示的數字是否等於 section .rodata prompt1 db "Enter an integer: ",0 ; 0 is null character pro