Lista de opcodes ARMv8 (AArch64, ARM64)

Lamento por questões em que a resposta parece ser facilmente pesquisada no google …

Algum tempo atrás eu vi uma tabela / lista de instruções ARMv8 com opcodes e estava perfeito, mas perdi o link. Agora estou tentando encontrar pelo menos algumas fontes onde opcodes de instruções listadas e não posso.

Existem alguns cabeçalhos C, onde os opcodes definidos de forma ilegível, muitas publicações científicas diferentes com mais de 1k páginas (sem opcodes), etc., mas não consigo encontrar uma lista simples.

Alguém poderia me apontar?

Resposta

Este documento pode ser interessante para você: https://github.com/CAS-Atlantic/AArch64-Encoding

Comentários

  • It ' é definitivamente melhor fonte que eu forneci. Muito obrigado!

Resposta

Eureka!


AQUI ESTÁ ESTA TABELA


PS É muito difícil pesquisar no Google (palavras-chave Eu usei – “b arm64 opcode”), então decidi postá-lo como resposta. Espero que “seja útil para outras pessoas.

Resposta

A fonte canônica é Manual de referência de arquitetura ARM . Se você preferir um formato legível por máquina, os arquivos XML também estão disponíveis .

Comentários

  • Sim, eu ' tentei trabalhar com documentos oficiais, mas leva muito tempo para extrair as informações necessárias (em menos para mim), que ' é o motivo pelo qual pesquisei algo bem estruturado com o mínimo de informações não ' relacionado ao assunto. Mas de qualquer forma, obrigado por compartilhar links para documentos oficiais, definitivamente será útil para futuros pesquisadores.
  • @OlvinRoght Para o meu caso, a resposta aceita não fornece nenhuma informação útil sobre os opcodes. O manual ARM acima faz isso bem. Aqui está um link direto static.docs.arm.com/ddi0596/a/… .
  • @Biswapriyo Significa que nossos casos são completamente diferentes. Eu ' precisava de opcodes para aplicar patches em aplicativos ofuscados e até mesmo a tabela que forneci em minha resposta foi suficiente.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *