2014-02-22 51 views
0

測試平臺是Linux 32位。爲什麼使用nasm編譯彙編代碼時出現這個奇怪的錯誤?

我用

nasm -f elf final.s 

組裝代碼,並生成這些錯誤:

final.s:40454: error: (at:1) `%$strucname': context stack is empty 
final.s:40454: error: (at:1) `%$strucstart': context stack is empty 
final.s:40454: error: (at:1) `%$strucname': context stack is empty 
final.s:40454: error: (at:1) `%$strucstart': context stack is empty 
final.s:40454: error: expecting `)' 
final.s:40454: error: label or instruction expected at start of line 

這裏是我的代碼部分:

40451 
40452 byte_4092CA  db 89h, 0FFh 
40453 off_415E82  dd $LN119 
40454 aT    db 'T',0 

40454是最後一行我的代碼。

我還沒有看到這種類型的錯誤,並在一個快速的谷歌後,我找不到任何有用的東西。

任何人都可以給我一些幫助嗎?謝謝!

-------------- --------------更新

我試圖把下面這行代碼到其他地方,但相同的錯誤...,這意味着它不是一些問題最後一行

回答

1

「at」是一個關鍵字,用於初始化結構。顯然,當你用它作爲象徵時,Nasm很(非常)困惑。我以爲我認識Nasm,但這對我來說是一個新的!只是打電話給你的變數別的 - _aT似乎工作...

+0

哇!我修改後,它的作品!謝謝:) – computereasy