欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

GNU arm 匯編偽指令詳解

林曉東 ? 來源:愛你沒話說 ? 作者:愛你沒話說 ? 2022-06-18 09:51 ? 次閱讀

所有的偽指令都是以 . 開頭命令,然后剩下的命名通常是小寫字母,比如 .section .type

.section

格式:.section name [, "flags "[, %type [,flag_specific_arguments ]]]

flags:

The optional flags argument is a quoted string which may contain any combination ofthe following characters:

a section is allocatable
w section is writable
x section is executable
M section is mergeable
S section contains zero terminated strings
G section is a member of a section group
T section is used for thread-local-storage

type:

The optional type argument may contain one of the following constants:

progbits:section contains data

nobits: section does not contain data (i.e., section only occupies space)

note: section contains data which is used by things other than the program

init_array:section contains an array of pointers to init functions

fini_array:section contains an array of pointers to finish functions

preinit_array:section contains an array of pointers to pre-init functions

實(shí)例:

.section .stack, "aw", %nobits /* 命名一個(gè)”.stack"段, 該段具有可分配和可寫屬性,該段不包含數(shù)據(jù),該段用于保存堆棧值 */

.size

格式:.size name , expression

This directive sets the size associated with a symbol name. The size in bytes is computedfrom expression which can make use of label arithmetic. This directive is typically used toset the size of function symbols.

.type

This directive is used to set the type of a symbol.

格式有多種形式,如下:

.type STT_
.type ,#
.type ,@
.type ,@
.type ,%
.type ,""

The types supported are:

STT_FUNC

function

Mark the symbol as being a function name.

STT_GNU_IFUNC

gnu_indirect_function

Mark the symbol as an indirect function when evaluated during reloc processing.
(This is only supported on Linux targeted assemblers).

STT_OBJECT

object

Mark the symbol as being a data object.

STT_TLS

tls_object

Mark the symbol as being a thead-local data object.

STT_COMMON

common

Mark the symbol as being a common data object.

STT_NOTYPE

notype

Does not mark the symbol in any way. It is supported just for completeness.

例子1

.section .text.Reset_Handler
.type Reset_Handler, %function Reset_Handler:

ldr sp, =_estack /* set stack pointer */

bl entry

bx lr

.size Reset_Handler, .-Reset_Handler

例子2

.section .text.Reset_Handler
.type Reset_Handler, STT_FUNC Reset_Handler:

ldr sp, =_estack /* set stack pointer */

bl entry

bx lr

.size Reset_Handler, .-Reset_Handler

例子3

.global g_pfnVectors .section

.isr_vector,"a",%progbits

.type g_pfnVectors, %object ;聲明一個(gè) object 對象

.size g_pfnVectors, .-g_pfnVectors

g_pfnVectors: .word _estack

.word Reset_Handler

.word NMI_Handler

.word HardFault_Handler

.word MemManage_Handler

.word BusFault_Handler

.word UsageFault_Handler

.global

.global makes the symbol visible to ld. If you define symbol in your partial program, itsvalue is made available to other partial programs that are linked with it. Otherwise, symboltakes its attributes from a symbol of the same name from another file linked into the sameprogram.

.global 用于聲明全局變量,是其讓ld可見。

.word

在當(dāng)前地址放一個(gè) 32bit 的值

g_pfnVectors: .word _estack

.word Reset_Handler

.word NMI_Handler

.word HardFault_Handler

上面的代碼表示,在連續(xù)相連的地址上,依次放各中斷服務(wù)函數(shù)指針

審核編輯:符乾江

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6044

    文章

    44629

    瀏覽量

    639034
  • GNU
    GNU
    +關(guān)注

    關(guān)注

    0

    文章

    143

    瀏覽量

    17550
收藏 人收藏

    評論

    相關(guān)推薦

    RISC-V基礎(chǔ)指令詳解

    RISC-V中定義了六種指令類型,其中包括 R型指令 : 用于寄存器與寄存器之間算數(shù)運(yùn)算的指令 I型指令 : 用于寄存器和立即數(shù)算術(shù)運(yùn)算和讀存儲器操作的
    發(fā)表于 12-29 18:47

    一文詳解Arm架構(gòu)Armv9.6-A中的最新功能

    Arm CPU 是當(dāng)今人工智能 (AI) 賦能軟件的關(guān)鍵,它可解釋、處理和執(zhí)行指令。Arm 指令集架構(gòu) (ISA) 作為硬件和軟件的接口,指示處理器做什么和怎么做。
    的頭像 發(fā)表于 12-17 10:22 ?1861次閱讀
    一文<b class='flag-5'>詳解</b><b class='flag-5'>Arm</b>架構(gòu)Armv9.6-A中的最新功能

    了解和使用GNU Radio軟件的功能并制作藍(lán)牙抓包器

    背景 在上一小節(jié)中,我們簡單介紹和使用了GNU Radio軟件的基礎(chǔ)功能和模塊,同時(shí)通過GNU Radio Companion(GRC)創(chuàng)建了簡單的流程圖,展示了信號生成、處理和輸出的流程。最后通過
    的頭像 發(fā)表于 11-15 16:10 ?746次閱讀
    了解和使用<b class='flag-5'>GNU</b> Radio軟件的功能并制作藍(lán)牙抓包器

    ARM匯編語言工具

    電子發(fā)燒友網(wǎng)站提供《ARM匯編語言工具.pdf》資料免費(fèi)下載
    發(fā)表于 11-06 09:12 ?0次下載
    <b class='flag-5'>ARM</b><b class='flag-5'>匯編</b>語言工具

    GNU構(gòu)建裸機(jī)系統(tǒng)

    基于AT91SAM7S平臺,介紹裸機(jī)開發(fā),以閃燈為藍(lán)本,涉及匯編、鏈接、C/C++、中斷等。   無處不在的ARM處理器家族得到了GNU C/C++工具鏈的良好支持。雖然許多在線和印刷資源關(guān)注
    發(fā)表于 10-16 17:34 ?0次下載

    RISC-V和arm指令集的對比分析

    RISC-V和ARM指令集是兩種不同的計(jì)算機(jī)指令集架構(gòu),它們在多個(gè)方面存在顯著的差異。以下是對這兩種指令集的詳細(xì)對比分析: 一、設(shè)計(jì)理念 RISC-V :RISC-V的設(shè)計(jì)理念是簡化
    發(fā)表于 09-28 11:05

    ARM處理器的指令集包括哪些

    ARM處理器的指令集是一個(gè)龐大而復(fù)雜的系統(tǒng),它涵蓋了多種類型的指令,用于實(shí)現(xiàn)數(shù)據(jù)處理、程序控制、內(nèi)存訪問等多種功能。
    的頭像 發(fā)表于 09-10 11:15 ?737次閱讀

    RISC-V匯編語言

    匯編程序員或者編譯器的編寫者來說通常很有用。這類指令在巧妙配置常規(guī)指令的基礎(chǔ)上實(shí)現(xiàn),稱為偽指令。上面兩張圖中列出了 RISC-V偽指令,前
    發(fā)表于 08-19 18:07

    RV32I 基本整數(shù)指令集(2.0版本)簡介

    ,rs1匯編語言偽指令。SLTI(set less than immediate)將數(shù)值1放到寄存器rd中,如果寄存器rs1小于符號擴(kuò)展的立即數(shù)(比較時(shí),兩者都作為有符號數(shù)),否則將0寫入rd。SLTIU
    發(fā)表于 06-24 17:27

    三菱plc常用指令使用詳解

    特點(diǎn)。本文將詳細(xì)介紹三菱PLC的常用指令及其使用方法。 基本指令 1.1. LD(Load,裝載)指令 LD指令用于將輸入信號加載到PLC內(nèi)部的存儲器中。其基本格式為: LD X0 其
    的頭像 發(fā)表于 06-20 10:45 ?6973次閱讀

    abb機(jī)器人編程指令詳解中的call什么意思

    ABB機(jī)器人編程指令詳解中的“call”是一個(gè)非常重要的指令,它允許程序員在程序中調(diào)用另一個(gè)程序或子程序。 概述 在ABB機(jī)器人編程中,程序是由一系列的指令組成的,這些
    的頭像 發(fā)表于 06-17 09:47 ?1294次閱讀

    RISC-V 指令概況

    , sp, framesize ret 偽指令:不是真的機(jī)器指令,會被匯編器翻譯為真實(shí)的物理指令。 例如: ret 被匯編為:jalr x0
    發(fā)表于 06-11 05:05

    GNU make中文手冊

    電子發(fā)燒友網(wǎng)站提供《GNU make中文手冊.pdf》資料免費(fèi)下載
    發(fā)表于 06-05 13:22 ?0次下載

    求分享esp8266和esp32的匯編指令集?

    想做操作系統(tǒng)移植,可是沒有在網(wǎng)上任何地方找到匯編指令集和寄存器說明,能否出一個(gè)?或者告訴我在那里找
    發(fā)表于 06-05 06:20

    軟件無線電安全之GNU Radio基礎(chǔ)知識

    GNU Radio是一款開源的軟件工具集,專注于軟件定義無線電(SDR)系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。該工具集支持多種SDR硬件平臺,包括USRP、HackRF One和RTL-SDR等。用戶可以通過GNU
    的頭像 發(fā)表于 02-25 10:20 ?5107次閱讀
    軟件無線電安全之<b class='flag-5'>GNU</b> Radio基礎(chǔ)知識