Re: [問題] 編譯器如何配置記憶體

看板Linux作者 (咖啡貓)時間16年前 (2008/08/25 12:36), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
gcc -S filename.c # 先把程式原始碼轉成組合語言 vi filename.s # 找出其中宣告 array 變數的 pseudo op 她的語法應該像以下這行 .comm SYMBOL,LENGTH,ALIGNMENT 把最後一欄 ALIGNMENT 改成你要的數值 ( 必需是 2 的N次方 ) gcc filename.s # 出來就是你要的 這個方法可以使用在 x86 平台, 至於其他的 CPU 我沒有試過. ※ 引述《jeremy007 (linux藍海帝國)》之銘言: : 大家好, : 小弟有一個 C 語言的全域變數 char array[4096]; : 現在想由 compiler 將 array 的記憶體位置 "強迫配置" 在 1024-byte 的整數倍 : 也就是當我用 printf("%x\n", (unsigned) array); : 我可以確認 array 的起始位置要能夠被 1024 所整除. : 請問應如何下 compiler 的參數呢 ? : 編譯環境為 gcc version 4.1.2 (Gentoo 4.1.2 p1.0.2) -- How shall my heart be unsealed unless it is broken? By Kahlil Gibran -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.8.136
文章代碼(AID): #18iZR1xh (Linux)
文章代碼(AID): #18iZR1xh (Linux)