AT T 組合語言學習筆記一

2021-06-11 12:38:08 字數 671 閱讀 3631

一、開發環境:

centos 5.6

二、硬體

intel i5(64位)

三、開發工具:

(1)gnu彙編器(gas) :將組合語言源代友轉換為處理器指令碼

$ as -o test.o test.s

(2)連(鏈)接器:解析程式**中宣告的所有定義好的函式和記憶體位址標籤

$ ld -o test test.o

(3) 偵錯程式:

$ gcc -gstabs -o ctest ctest.c

$ gdb ctest

(4)編譯器:把高階語言轉換為處理器能夠執行的指令碼,許多編譯器包含彙編器的處理過程。

gnn編譯器使用gnu彙編器(gas)生成指令碼

$ gcc -o ctest ctest.c
$ gcc -s ctest.c

(5) 反彙編器:將可執行程式或者目標**轉換成處理器上的指令碼

$ gcc -c ctest.c  //未經鏈結的目標檔案

$ objdump -d ctest.o

AT T組合語言筆記

1。在gcc產生的彙編中,0x80498d4表示立即數,而0x80498d4表示記憶體位址0x80498d4對應的內容。對於lable,比如value,則 value表示value的位址,value表示value的值。設函式func的位址 func 0x8048828 這兩種呼叫都是一樣的 1 ca...

組合語言學習筆記 一

基礎知識 1.什麼是機器語言?機器語言是機器指令的集合。就是計算機能執行的命令。機器指令就是一列二進位制數字。計算機將之轉變為一列高低電平,使計算機的電子器件受到驅動,進行計算。一列二進位制的數字,人閱讀起來非常不方便。2.什麼是組合語言?組合語言的主體是彙編指令。彙編指令是機器指令便於記憶的書寫格...

組合語言學習筆記(一)

自學王爽老師編寫的組合語言一書有一段時間了,開乙個部落格記錄一下自己這段時間的學習。一.基礎知識 1.機器語言 機器指令的集合。2.組合語言的主體 彙編指令。3.組合語言的組成 彙編指令 偽指令 其他符號。指令和資料是應用上的概念,在記憶體中二者無任何區別。4.儲存單元從0開始編號 位元 bit 位...