about summary refs log tree commit diff stats
path: root/subx/ex3.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2018-07-27 13:26:12 -0700
committerKartik Agaram <vc@akkartik.com>2018-07-27 13:30:19 -0700
commit071afeff5d99732b2f50f2a5009dc6f2e8303909 (patch)
treec64ab64375bc1d7d79bc6d4022198c9b392bbf87 /subx/ex3.subx
parent4718a77ce26c02bac7cfe28637c2892091ac0075 (diff)
downloadmu-071afeff5d99732b2f50f2a5009dc6f2e8303909.tar.gz
4445 - support labels
Diffstat (limited to 'subx/ex3.subx')
-rw-r--r--subx/ex3.subx9
1 files changed, 4 insertions, 5 deletions
diff --git a/subx/ex3.subx b/subx/ex3.subx
index 4dcb10e9..5b3fdb16 100644
--- a/subx/ex3.subx
+++ b/subx/ex3.subx
@@ -12,23 +12,22 @@
 # op          subop               mod             rm32          base      index     scale     r32
 # 1-3 bytes   3 bits              2 bits          3 bits        3 bits    3 bits    2 bits    2 bits      0/1/2/4 bytes   0/1/2/4 bytes
   # result: EBX = 0
-# 0: e_entry = 0x08048054
   bb                                                                                                                      0/imm32           # copy 0 to EBX
   # counter: ECX = 1
   b9                                                                                                                      1/imm32           # copy 1 to ECX
 
-# 10: loop: 0x0804805e
+loop:
   # while (ECX <= 10)
   81            7/subop/compare   3/mod/direct    1/rm32/ecx                                                              0xa/imm32         # compare ECX, 10/imm
-  7f                                                                                                      0xa/disp8                         # jump-if-greater exit (+10 bytes)
+  7f                                                                                                      exit/disp8                        # jump-if-greater
   # EBX += ECX
   01                              3/mod/direct    3/rm32/ebx                                  1/r32/ecx                                     # add ECX to EBX
   # ECX++
   81            0/subop/add       3/mod/direct    1/rm32/ecx                                                              1/imm32           # add 1 to ECX
   # loop
-  eb                                                                                                      -0x12/disp8                       # jump loop (-18 bytes)
+  eb                                                                                                      loop/disp8                        # jump
 
-# 28: exit: 0x08048070
+exit:
   # exit(EBX)
   b8                                                                                                                      1/imm32           # copy 1 to EAX
   cd                                                                                                                      0x80/imm8         # int 80h