![](/img/trans.png)
[英]What's the difference between using ori and addi to initialize a value in MIPS?
[英]What is difference between .space {value} sbrk (allocate heap memory) in MIPS
在 MIPS 中,我們可以通過將 $v0 設置為 9 的 using.space 來分配 memory。
.data
arr: .space 12 # array of 12
要么
li $v0, 9
li $a0, 12
syscall
我知道兩者都會給我 12 個字節的空間,sbrk 從堆中分配但實際上我不知道 does.space 做了什么。 你能解釋一下這兩者之間有區別嗎?
查看差異的最簡單方法是在十六進制編輯器中查看已編譯的可執行文件。 使用.space n
時,您的文件大小增加了n
個字節。 嘗試使用和不使用.space 12
來組裝相同的程序,您會在帶有.space 12
的版本的 hexdump 中看到 12 個額外的零。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.