BLRAAZ 十六进制值

BLRAAZ hexadecimal value

如题中所述,有谁知道BLRAAZ指令的十六进制(如blraaz x19)?

radare2 似乎还没有实现,我在互联网上找不到任何值。

根据ARM a64 instruction set architecture(第98页),指令BLRAAZ <Xn>

+---------------+-----+---------------------------+-------+------------+----------+
| 1 1 0 1 0 1 1 | Z=0 | 0 0 1 1 1 1 1 1 0 0 0 0 1 | M = 0 | Rn = ????? | Rm=11111 |
+---------------+-----+---------------------------+-------+------------+----------+

以二进制表示,即 0xD63F081F 以十六进制表示。 Rn 是您的注册号。对于 x19,只需在此处设置 Rn=10011 即可得到 0xD63F0A7F

甚至比在线查找答案更快,您可以尝试一下:

blraaz x19

assemble 然后disassemble

   0:   d63f0a7f    blraaz  x19

编辑:

倒退(使用 binutils)

.inst 0xd63f0a7f

Disassembly of section .text:

0000000000000000 <.text>:
   0:   d63f0a7f    blraaz  x19


aarch64-none-elf-as --version
GNU assembler (GNU Binutils) 2.34
Copyright (C) 2020 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `aarch64-none-elf'.

apt-get install binutils-aarch64-linux-gnu

aarch64-linux-gnu-as --version
GNU assembler (GNU Binutils for Ubuntu) 2.30
Copyright (C) 2018 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `aarch64-linux-gnu'.

Disassembly of section .text:

0000000000000000 <.text>:
   0:   d63f0a7f    blraaz  x19


blraaz x19


Disassembly of section .text:

0000000000000000 <.text>:
   0:   d63f0a7f    blraaz  x19

所以apt-gettable 2.30也支持这个指令。 (与从源代码构建 2.34 相比)