第29部分- Linux ARM汇编 术语和参考

 

第29部分- Linux ARM汇编 术语和参考

术语

AAPCS:ARM Architecture Procedure Call Standard.

TrustedOS: This is the operating system running in the Secure World. It supports the execution of trusted applications in Secure EL0. When EL3 is using AArch64 it executes in Secure EL1. When EL3 is using AArch32 it executes in Secure EL3 modes other than Monitor mode.

EL0:Exception level used to execute user applications.

EL1:Exception level normally used to run operating systems.

El2:Hypervisor Exception level. In the Normal world, or Non-Secure state, this is used to execute hypervisor code.

EL3:Secure Monitor exception level.This is used to execute the code that guards transitions between the Secure and Normal worlds.

 

参考

ARM架构

ARM Reference Manual

http://infocenter.arm.com/help/topic/com.arm.doc.dui0068b/index.html)

A Guide to ARM64 / AArch64 Assembly on Linux with Shellcodes and Cryptography

 

 ARM汇编语法

https://developer.arm.com/docs/dui0473/k/writing-arm-assembly-language

https://developer.arm.com/common-tasks/writing-arm-assembly-code/single-page

http://www.toves.org/books/arm/

http://www.keil.com/support/man/docs/armasm/armasm_dom1359731144635.htm

http://www.keil.com/support/man/docs/armasm/armasm_dom1359731144051.htm

http://www.peter-cockerell.net/aalp/html/frames.html

Whirlwind Tour of ARM Assembly.https://www.coranac.com/tonc/text/asm.htm

Practical Reverse Engineering: x86, x64, ARM, Windows Kernel, Reversing Tools, and Obfuscation by Bruce Dang, Alexandre Gazet, Elias Bachaalany and Sebastien Josse.

https://azeria-labs.com/writing-arm-assembly-part-1/

Assembler User Guide. http://www.keil.com/support/man/docs/armasm/default.htm

基于Android的ARM汇编语言系列 https://blog.csdn.net/allenwells/article/details/46773257

 

 64位汇编

Exploring AArch64 assembler – Chapter 1

32位到64位移植

Overview of ARM64 ABI conventions

Migrating code from ARM to ARM64

《Porting to Arm 64-bit》

A Guide to ARM64 / AArch64 Assembly on Linux with Shellcodes and Cryptography

64位ARM函数调用标准

https://developer.arm.com/docs/ihi0055/d/procedure-call-standard-for-the-arm-64-bit-architecture

 

指令集

https://static.docs.arm.com/100898/0100/the_a64_Instruction_set_100898_0100.pdf

ARMv8 Instruction Set Overview

 

浮点

参考链接:

What Every Computer Scientist Should Know About Floating Point Arithmetic

 

NEON

Neon Programmer’s guide

 

树莓派

(32位)ARM assembler in Raspberry Pi https://thinkingeek.com/arm-assembler-raspberry-pi/

树莓派

https://www.sciencedirect.com/topics/computer-science/raspberry-pi

ARM Assembly Programming Using Raspberry Pi

RASPBERRY PI ASSEMBLER

 

书籍

《汇编语言程序设计:基于ARM体系结构第三版》

《ARM Assembly Language Fundamentals and Techniques》

 

编译器

A ToC of the 20 part linker essay

System V Application Binary Interface - DRAFT - 10 June 2013

计算机原理博客

 

 

官方材料

《Programmer’s Guide for ARMv8-A-DEN0024A_v8_architecture_PG》

Technical Reference Manuals (TRMs)

ARM Architecture Reference Manual (the ARM ARM)

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
CRC Press ARM Assembly Language Fundamentals and Techniques 2009 William Hohl Publication Date: March 13, 2009 | ISBN-10: 1439806101 | ISBN-13: 978-1439806104 | Edition: 1 Written by the director of ARM’s worldwide academic program, this volume gives computer science professionals and students an edge, regardless of their preferred coding language. For those with some basic background in digital logic and high-level programming, the book examines code relevant to hardware and peripherals found on today's microcontrollers and looks at situations all programmers will eventually encounter. The book’s carefully chosen examples teach easily transferrable skills that will help readers optimize routines and significantly streamline coding, especially in the embedded space. This book is easily adaptable for classroom use. Instructors can access features that include a solutions manual, assembly language basics, problems, and actual code. The book also provides access to a fully functional evaluation version of the RealView Microcontroller Development Kit from Keil. While it is still an important skill, getting good instruction in assembly language is not easy. The availability of languages such as C and Java foster the belief that engineers and programmers need only address problems at the highest levels of a program's operation. Yet, even modern coding methods, when done well, require an understanding of basic assembly methods such as those gained by learning ARM. Certain features that are the product of today’s hardware, such as coprocessors or saturated math operations, can be accessed only through the hardware’s native instructions. For that matter, any programmer wishing to achieve results as exact as his or her intentions needs to possess a mastery of machine code basics as taught in the pages of this book. Of the 13 billion microprocessor-based chips shipped in the last year, nearly 3 billion were ARM-based, making operational knowledge of ARM an essential component of any programmer’s tool kit. That it can be applied with most any language makes it invaluable.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值