armv8

    0熱度

    1回答

    我一直在使用32位iMX6q SABRE-SD板(arm Cortex-A9)進行裸機編程。我使用「arm-none-eabi」作爲工具鏈。現在,我想將我編寫的所有代碼移植到64位ARM Cortex-A57(R-Car M3板卡)。我將如何選擇這個任務的編譯器。我可以使用相同的編譯器進行一些標誌更改以編譯64位設計。還是會有製造商提供的任何特定的編譯器。 有人會爲他/她的嵌入式設計選擇編譯器。

    0熱度

    1回答

    我知道有對這種事情的ARMv5及更高版本armmv6數據表,但是,有沒有爲armv8至少沒有公開給出。我經歷了:https://people-mozilla.org/~sstangl/arm/AArch64-Reference-Manual.pdf 我沒有實際讀過它的所有內容,但解析的東西是這樣的:系統定時器,時鐘,外設,基址......沒有給我任何滿意的結果。 我想要的是一個基地址列表,告訴我基

    0熱度

    1回答

    我正在嘗試使用armv7彙編指令集根據armv7架構編寫一個啓動加載程序? 例如: 設定CPU到SVC模式上電覆位: mrs r0, cpsr bic r0, r0,#0x1f orr r0, r0,#0xd3 msr cpsr, r0 mov pc, lr 將在armv8相同的引導程序的工作。由於armv8也支持aarch32。 但另一方面它也有很多不同之處。

    0熱度

    1回答

    我想弄清楚在ARM程序集中數組是如何工作的,但我只是不知所措。我想初始化一個大小爲20的數組爲0,1,2等等。 A[0] = 0 A[1] = 1 我什至不知道如何打印什麼,我必須看看,如果我做得正確。這是我到目前爲止: .data .balign 4 @ Memory location divisible by 4 string: .asciz "a[%d] = %d\n"

    0熱度

    1回答

    我正在使用ARMv8編碼。我幾乎完成了我的代碼,除了我遇到了問題。當我運行代碼時,出現「分段錯誤(核心轉儲)」錯誤。 這個問題的產生是因爲當該行用// THIS ONE A註釋執行時,它將一個非常大的數字存儲到x24中,當它應該存儲介於0到50之間的數字時。因此,在標有// THIS ONE B和C的行中,代碼試圖指向某處,如x29 + 2^40左右,而不是x29 +(0-50)。 我試過通過代碼

    0熱度

    1回答

    在我的代碼,我有 mov x21, 0 str x21, [x29, 16] 代碼 再後來, ldr x22, [x29, 16] 存儲0到X22。 然後,即使在後面的代碼,我有 ldr x23, [x29, 16] 其結束存儲214748364800到X23,即使在這兩個ldr命令之間沒有str命令。 我的問題是我如何設置[x29, 16]位置的觀察點在堆棧上,以便我可以看到它的寫