diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-10-23 23:38:14 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-10-23 23:38:14 -0700 |
commit | b4a3e804af6e78fe129f9a500c995d64fe70c4c0 (patch) | |
tree | 48ff67492ff9718ca71b441204bee79f0250cc82 /tutorial | |
parent | 145957b7ee74c9698f6735caf3505eba67b33d03 (diff) | |
download | mu-b4a3e804af6e78fe129f9a500c995d64fe70c4c0.tar.gz |
rewrite Mu reference
Diffstat (limited to 'tutorial')
-rw-r--r-- | tutorial/index.md | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/tutorial/index.md b/tutorial/index.md index e23e0542..8d295369 100644 --- a/tutorial/index.md +++ b/tutorial/index.md @@ -121,9 +121,10 @@ quotes. ## Task 4: your first Mu statement -Mu is a statement-oriented language. Read the first section of the [Mu syntax -description](https://github.com/akkartik/mu/blob/main/mu.md) (until the first -sub-heading, "functions and calls") to learn a little bit about it. +Mu is a statement-oriented language. Most statements translate into a single +instruction to the x86 processor. Read the first two sections of the [Mu +syntax description](https://github.com/akkartik/mu/blob/main/mu.md) (about +functions and variables) to learn a little bit about it. Here's a skeleton of a Mu function that's missing a single statement. @@ -178,10 +179,9 @@ convert 42 to hexadecimal, or [this page on your web browser](http://akkartik.gi ## Task 5: variables in registers, variables in memory We'll now practice managing one variable in a register (like last time) and -a second one in memory. To prepare for this, reread the first section of the -[Mu syntax description](https://github.com/akkartik/mu/blob/main/mu.md), and -then its section on [local variables](https://github.com/akkartik/mu/blob/main/mu.md#local-variables). -The section on [integer primitives](https://github.com/akkartik/mu/blob/main/mu.md#integer-primitives) +a second one in memory. To prepare for this, reread the first two sections of +the [Mu syntax description](https://github.com/akkartik/mu/blob/main/mu.md). +The section on [integer arithmetic](https://github.com/akkartik/mu/blob/main/mu.md#integer-arithmetic) also provides a useful cheatsheet of the different forms of instructions you will need. @@ -203,7 +203,7 @@ command as often as you like: ./translate tutorial/task5.mu && qemu-system-i386 code.img ``` -The section on [integer primitives](https://github.com/akkartik/mu/blob/main/mu.md#integer-primitives) +The section on [integer arithmetic](https://github.com/akkartik/mu/blob/main/mu.md#integer-arithmetic) shows that Mu consistently follows a few rules: * Instructions that write to a register always have an output before the `<-`. * Instructions that use an argument in memory always have it as the first |