2011-06-05 105 views
1

我是ARM新手,想知道如何在寄存器內打印值嗎?我試過這個,但它只是給我一個QEMU的空白屏幕。在ARM程序集中打印值?

.global _start 

_start: bl hardware_init 
     mov r0,#20 
     .print "something happend" 

我想要做的是找出哪些標籤和通過打印在程序中發生的跳轉。

回答

1

我以前沒有用過.print,對此一竅不通。我通常從串口發射字符。你可以在qemu上作弊,而不是初始化串行端口,因爲它是虛擬的,並且只是向發送寄存器寫入字節,同樣你不必等待發送狀態顯示字符已經消失,你可以將東西爆炸出來。

在qemu中,你需要做一些鍵盤組合來查看串行控制檯,ctrl alt 3或類似的東西。也許你的.print正在工作,它只是在另一個控制檯上。