GDB調(diào)試arm匯編程序-入門

程序生成步驟

轉(zhuǎn)自:https://azeria-labs.com/writing-arm-assembly-part-1/
  • 寫好匯編代碼到helloworld.s
  • 編譯文件(但是沒有鏈接)

只編譯不鏈接形成.o文件。里面包含了對各個函數(shù)的入口標(biāo)記柒莉,描述纲熏,當(dāng)程序要執(zhí)行時還需要鏈接(link)
鏈接就是把多個.o文件鏈成一個可執(zhí)行文件

as helloworld.s -o helloworld.o
  • 鏈接文件,形成可執(zhí)行文件
ld helloworld.o -o helloworld

GDB調(diào)試

程序代碼

.data
var1: .word 3
var2: .word 4

.text
.global _start

_start:
    ldr r0, adr_var1         @ load the memory address of var1 via label adr_var1 to R0
    ldr r1, adr_var2         @ load the memory address of var2 via label adr_var2 to R1
    ldr r2, [r0]             @ load the value (0x03) at memory address found in R0 to R2
    str r2, [r1, r2, LSL#2]  @ address mode: offset. Store the value found in R2 (0x03) to the memory address found in R1 with the offset R2 left-shifted by 2. Base register (R1) unmodified.
    str r2, [r1, r2, LSL#2]! @ address mode: pre-indexed. Store the value found in R2 (0x03) to the memory address found in R1 with the offset R2 left-shifted by 2. Base register modified: R1 = R1 + R2<<2
    ldr r3, [r1], r2, LSL#2  @ address mode: post-indexed. Load value at memory address found in R1 to the register R3. Then modifiy base register: R1 = R1 + R2<<2
    bkpt

adr_var1: .word var1
adr_var2: .word var2
  • 進(jìn)入調(diào)試
gdb helloworld
  • 下斷點(diǎn)棚辽。在_start函數(shù)下好斷點(diǎn)
break _start
  • 運(yùn)行技竟。會執(zhí)行到斷點(diǎn)位置
run 或者 r
  • 向下執(zhí)行3步
nexti 3
  • 查看下面的10條指令

x:十六進(jìn)制,i:指令

x/10i $pc
  • 查看所有寄存器狀態(tài)數(shù)據(jù)
info registers
或者: i r
  • 查看指定內(nèi)存地址存儲的數(shù)據(jù)

x:十六進(jìn)制
w:word屈藐,字類型

x/w 0x0001009F
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末榔组,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子联逻,更是在濱河造成了極大的恐慌搓扯,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件包归,死亡現(xiàn)場離奇詭異锨推,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)公壤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進(jìn)店門换可,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人厦幅,你說我怎么就攤上這事沾鳄。” “怎么了确憨?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵译荞,是天一觀的道長瓤的。 經(jīng)常有香客問我,道長吞歼,這世上最難降的妖魔是什么圈膏? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮篙骡,結(jié)果婚禮上本辐,老公的妹妹穿的比我還像新娘。我一直安慰自己医增,他們只是感情好慎皱,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著叶骨,像睡著了一般茫多。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上忽刽,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天天揖,我揣著相機(jī)與錄音,去河邊找鬼跪帝。 笑死今膊,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的伞剑。 我是一名探鬼主播斑唬,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼黎泣!你這毒婦竟也來了恕刘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤抒倚,失蹤者是張志新(化名)和其女友劉穎褐着,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體托呕,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡含蓉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了项郊。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片馅扣。...
    茶點(diǎn)故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖呆抑,靈堂內(nèi)的尸體忽然破棺而出岂嗓,到底是詐尸還是另有隱情汁展,我是刑警寧澤鹊碍,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布厌殉,位于F島的核電站,受9級特大地震影響侈咕,放射性物質(zhì)發(fā)生泄漏公罕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一耀销、第九天 我趴在偏房一處隱蔽的房頂上張望楼眷。 院中可真熱鬧,春花似錦熊尉、人聲如沸罐柳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至劣领,卻和暖如春榨呆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背溯香。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人伦忠。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像稿辙,于是被迫代替她去往敵國和親昆码。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 下圖是2017年我的朋友圈最喜歡的照片,沒有之一芥备。如果你有耐心冬耿,不嫌棄我啰嗦,我想給你講講這張照片的故事萌壳。 (1)...
    靜若無心閱讀 3,963評論 4 17
  • 從2008年5月12日開始亦镶,此后每年的5月12日都有了特殊的意義,今年的今天也毫不例外袱瓮,2016年5月12日——汶...
    左宜右有之閱讀 280評論 0 0
  • 為喜歡的人缤骨,你做過哪些傻事呢? 年輕的時候尺借,我們多多少少都會為喜歡的人做過一些傻事吧?...
    唐朝曉風(fēng)閱讀 147評論 0 0
  • 歌曲<<最炫民族風(fēng)>> 老年人帶來了全國廣場舞運(yùn)動绊起,既讓老年人鍛煉了身體又豐富了平時的娛樂活動。 山城在全國人民的...
    老蔣689閱讀 210評論 8 25
  • 了解人體結(jié)構(gòu) 細(xì)胞—>構(gòu)成—>組織—構(gòu)成—>器官—>構(gòu)成—>系統(tǒng)—>構(gòu)成—>人體 最終還是由細(xì)胞——>決定——>人...
    kj康健閱讀 465評論 0 0