3
A
回答
7
我不知道任何特定的程序集,但你提到的東西可以用sed完成。
幾件事情需要注意:
- 助記符由正則表達式匹配
[A-Za-z0-9]+
。關於我的頭頂,我想不出任何包含其他角色的助記符。 - GPR的上半部分匹配
r(8|9|1[0-5])(b|w|d)
? - 字節GPRS(不含R8B-r15b)由
[abcd](l|h)|(sp|bp|si|di)l
- 匹配的16,32和64位的低8個GPR則通過
[er]?([abcd]x|sp|bp|si|di)
匹配 - SSE寄存器可以與該正則表達式匹配
xmm(1[0-5]?|[0,2-9])
例如:
# Replace tabs with spaces, then clean up lines of the form "op reg/imm, ..."
# N.B. without the /I option the match will be case-sensitive
sed 's/\t/ /g' <test.s | sed 's/^\s*\([a-z0-9][a-z0-9]*\)\s\s*\([a-z0-9][a-z0-9]*\)\s*,\s*/\t\1\t\2, /I'
# Lowercase all GPRs and SSE vector registers"
# I have chosen not to use the more compact patterns above in the interest of readability.
... | sed '/\([^a-z]\)\(AL|AH|AX|EAX|RAX|...XMM0|XMM1|...|XMM15\)/\1\L\2/gI'
# Lowercase all instruction mnemonics. More specifically, matches the first thing on every line except when it is followed by a colon.
... | sed '/^\s*\([a-z0-9][a-z0-9]*\)\([^:]\)/\L\1\2/I
相關問題
- 1. 如何檢查x86_64程序集中的寄存器是否爲零
- 2. Nodejs:是否有任何方法來美化我的package.json文件?
- 3. 是否有任何程序檢查數據集是否有索引?
- 4. 程序集是否有初始化和/或終止程序?
- 5. 如何從x86_64程序集調用sprintf?
- 6. 程序中是否有程序集?
- 7. Solr中是否有任何優化調度程序?
- 8. 是否有任何IL編輯器來更改程序集的字節碼?
- 9. xdebug是否美化var_dump?
- 10. 是否有任何C預處理器作爲獨立程序?
- 11. Android應用程序是否有任何菜單生成器?
- 12. 是否有任何可用的Processing程序分析器?
- 13. 是否有任何與Tapestry完美集成的複雜UI小部件?
- 14. 是否有任何API來集成FEDEX?
- 15. 是否有任何支持代碼自動格式化(也稱爲美化)的Mac OS代碼編輯器?
- 16. 在x86_64程序集中實現StrCat
- 17. x86_64程序集命令行參數
- 18. 從x86_64程序集調用memset
- 19. 在Maven程序集中是否有程序集標識屬性?
- 20. 如何將iAds集成到應用程序中是否有任何示例?
- 21. 是否有任何的網絡服務可以返回美國
- 22. 是否有任何服務器標記羣集解決方案?
- 23. 是否有ML型初始化程序?
- 24. 在gcc內聯x86_64程序集中約束r10寄存器
- 25. 是否有任何類對象在JavaScript中可序列化?
- 26. 在jquery中是否有任何原型序列化()
- 27. 是否將圖標分配給.net庫程序集有任何用處
- 28. 是否有任何方法將C#程序集靜態編譯到項目中?
- 29. 引用5MB .Net程序集是否有任何性能考慮因素?
- 30. 是否有任何方式在Silverlight中使用.NET 4.0程序集
這很好,如果我沒有找到任何得到它全部完成,我將使用this.Thanks!仍然留給我大寫的指示,我只是小寫一切,但標籤是camelCase。 –
這有點粗糙,我只覆蓋了一些最小的案例來傳達想法,但它會做你想做的:sed's/\(ADD \ | OR \ | ADC \ | SBB \ | SUB \ | AND \ | XOR \ | CMP \ | AL \ | AH \ | AX \ | EAX \ | RAX \)/ \ L \ 1/g'
icecreamsword
我想我必須這樣做,但問題我使用了幾十個SSE指令,看起來像PUNPCKLWD。可能可能在某處獲得列表,並解析它以創建一個可用的sed命令。稍後再嘗試。 –