# 根據源**命令修改
as maximum.s -o maximum.o
ld maximum.o -o maximum
# 用於檢視程式返回給作業系統的狀態碼
# 狀態碼儲存在 %ebx 通用暫存器中
echo
$?
.section .data
msg : .string "hello, world\n"
len = . - msg
.section .text
.global _start
_start:
movl $len, %edx # %edx 引數三: 字串長度
movl $msg, %ecx # %ecx 引數二: 要顯示的字串
movl $1, %ebx # %ebx 引數一: 檔案描述符(stdout)
movl $4, %eax # 系統呼叫號(sys_write)
int $0x80 # 呼叫核心功能
movl $len, %ebx # 引數一: 退出**
movl $1, %eax # 系統呼叫號(sys_exit)
int $0x80
字串列印的條件(3個引數, 系統呼叫)
3個引數:
a. 字串長度存放在 %edx
b. 待顯示的字串存放在 %ecx
c. 使用檔案描述符(stdout), 存放在 %ebx
系統呼叫號(sys_write), 存放在 %eax , (int $0x80) 呼叫核心功能;
由於給定字串的長度, 可以列印足夠長的字串.
深入理解程式設計 使用linux組合語言
2020-12-04-組合語言的主要型別
跳轉指令(待完成)
2020 12 08 Linux組合語言 三
根據源 命令修改 as maximum.s o maximum.o ld maximum.o o maximum 用於檢視程式返回給作業系統的狀態碼 狀態碼儲存在 ebx 通用暫存器中 echo 目的 尋找一組給定資料項中的最大值 輸入 無 輸出 返回一組資料項中的最大值,執行結束後使用 echo ...
linux彙編必讀
個人認為程式就是用來處理資料的,所以最要緊的是解決輸入與輸出的問題,還有乙個要緊的問題就是我們能在螢幕上看到輸出結果,下面我說說我在看linux下面彙編 的時候的一些感想,以及linux下面彙編和dos下面的個人認為的最主要的不同,在dos下面主要就是呼叫dos中斷和bios中斷 比如返回系統是 m...
Linux彙編初識
2011 06 11 20 29 02 分類 x86與arm 標籤 movl 彙編器linux att 舉報 字型大小訂閱 hello.s intel彙編的注釋用的 而att用的 display a string hello,world.section rodata msg ascii hello,...