Skip to content

Commit

Permalink
Merge pull request #57 from jullk/feat-lab0-instr
Browse files Browse the repository at this point in the history
feat(doc): add some hints about aarch64 in Lab0
  • Loading branch information
sjtugjy authored Nov 5, 2024
2 parents 3b36714 + 6b5f78b commit cf05304
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions Pages/Lab0/instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,19 @@
AArch64 是 ARMv8 ISA 的 64 位执行状态。《ARM 指令集参考指
南》是一个帮助入门 ARM 语法的手册。在 ChCore 实验中,只
需要在提示下可以理解一些关键汇编和编写简单的汇编代码即可。
你可以在 [Arm 的网站](https://developer.arm.com/) 上搜索具体的指令,
常备快速参考手册也有帮助,比如 [这里](https://courses.cs.washington.edu/courses/cse469/19wi/arm64.pdf)

> [!TIP]
> 如果你完全没接触过 ARM,这些提示可以帮助你更顺利进入实验:
> - x0-x31 是 64 位通用寄存器
> - x0-x7 用作传参,x0 还用作返回值
> - x31 (sp) 是栈指针
> - x30 (lr) 是返回地址
> - x29 (fp) 是栈帧指针
> - w0-w31 是 x0-x31 对应的 32 位寄存器
> - [Xn][Xn, #imm] 是两种常用的取址模式,寄存器内的值解释为地址,加上可选的常量偏移

## 使用 QEMU 运行炸弹程序

Expand Down

0 comments on commit cf05304

Please sign in to comment.