這條指令到底做了什麼?我知道它試圖將數據與特定數字的倍數對齊,但爲什麼你需要這樣做呢?其他彙編器中是否有等效的指令?MIPS上的'align'指令
7
A
回答
9
您通常會調整數據以獲得更好的性能。對於大多數處理器來說,不訪問特定字節邊界時,存儲器訪問會受到一些懲罰對於其他彙編程序,爲此,通常會有某種pseudo-op.align
。大多數編譯器也調整它們的數據結構(儘管可以爲了調試目的而禁用它)。
另請參閱此Wikipedia entry。
1
在其他彙編程序中是否有等價的instruccion?
MASM有一個ALIGN指令:http://msdn.microsoft.com/en-us/library/dwa9fwef(VS.80).aspx
0
它對準一切的兩個n次冪。它不是一個指令,它的一個指令,將被翻譯成指令
至於它的使用情況,對exampe:
MIPS32指令通常是32位長。所以每條指令都應該從單詞邊界開始。在代碼開始之前添加.align指令,將事情對齊到32位。這有很多好處,包括它只需要1次內存訪問來獲取指令,並且它可能對指令高速緩存有利。
+0
如何在堆棧上存儲雙浮點數?它需要8個字節對齊嗎? – 2017-02-03 12:36:44
相關問題
- 1. MIPS BNE指令
- 2. 數據指令中的MIPS指令
- 3. MIPS sra SPIM指令
- 4. MIPS指令問題
- 5. 數betweeen MIPS指令
- 6. MIPS中的JUMP指令
- 7. MIPS跳轉指令範圍
- 8. MIPS彙編指令參數
- 9. MIPS有符號位指令
- 10. MIPS/UP16分支指令
- 11. 組裝MIPS TAl指令
- 12. 解碼BNE MIPS指令
- 13. 彙編mips指令lbu
- 14. addiu指令編碼(MIPS,GCC)
- 15. 有32個零的Mips指令
- 16. 有關MIPS指令的問題
- 17. 。MIPS彙編中的.word指令
- 18. MIPS指令的簡單C函數
- 19. MIPS的「addi」指令溢出 - 示例
- 20. 在真機上運行MIPS指令[不是在模擬器上]
- 21. mips存儲指令偏移量和移動指令
- 22. MIPS中清除指令:clear $ t0
- 23. MIPS編程指令計數問題
- 24. 如何轉換Mips僞指令?
- 25. MIPS彙編指針指針?
- 26. 令人困惑的.align地址排列
- 27. 指令引用的0x00400014 [MIPS]未定義符號
- 28. MIPS j&beq指令代表的目標操作數是什麼?
- 29. MIPS計算跳轉指令的機器編碼
- 30. 在指令中使用符號的MIPS/MARS?
感謝您在外部鏈接中的額外說明! – 2009-06-21 04:44:08