[問題] 系統呼叫問題

看板ASM作者 (Monitor)時間9年前 (2015/03/11 22:59), 9年前編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
小弟在linux上,使用AT&T的語法,想要印出字元'0',可是程式執行後,stdout的輸出是 空白的!!! 程式如下: .section .text .globl main main: movl $4, %eax # 用途不明... 應該是設定系統呼叫 movl $1, %ebx # stdout == 1 movl $48, %ecx # ascii '0' == 48(D) movl $42, %edx # 用途不明 應該也是設定系統呼叫吧... int $0x80 movl $1, %eax # 設定系統呼叫 exit movl $0, %ebx # 以 0 退出 int $0x80 不知到這程式有什麼錯誤的地方嗎? 還是小弟有什麼認知上的問題? 感謝各位大大解答!!! -- Sent from my Android -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.37.136.120 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1426085964.A.748.html ※ 編輯: OPIV (114.37.136.120), 03/11/2015 23:06:15

03/12 01:01, , 1F
ecx好像是要給offset 不是直接給值
03/12 01:01, 1F

03/12 05:47, , 2F
參數位置怎麼怪怪的
03/12 05:47, 2F
文章代碼(AID): #1L05XCT8 (ASM)