summaryrefslogtreecommitdiff
path: root/4/practice_problem_4_13_irmovq_trace.c
diff options
context:
space:
mode:
authorMike Vink <ivi@vinkies.net>2025-02-16 18:21:50 +0100
committerMike Vink <ivi@vinkies.net>2025-02-16 18:21:50 +0100
commitb9bf3afbb52aebcc0f93df55b55ec0f0f521b1ab (patch)
tree76899e2e38c2a9ca7e40db160a9c86ee0ad4e0dc /4/practice_problem_4_13_irmovq_trace.c
parent7ae6aa6a64f3f697edb90bb573862bf31dd14e69 (diff)
add some practice problems from 4HEADmaster
Diffstat (limited to '4/practice_problem_4_13_irmovq_trace.c')
-rw-r--r--4/practice_problem_4_13_irmovq_trace.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/4/practice_problem_4_13_irmovq_trace.c b/4/practice_problem_4_13_irmovq_trace.c
new file mode 100644
index 0000000..47e13b5
--- /dev/null
+++ b/4/practice_problem_4_13_irmovq_trace.c
@@ -0,0 +1,23 @@
+/*
+stage Generic Specific
+ irmovq kv, rB irmovq $128, %rsp
+
+Fetch icode:ifun <- M_1[PC] 0x3:0x0 <- M_1[PC]
+ rA:rB <- M_1[PC+1] F:0x4 <- M_1[PC+1]
+ valC <- M_8[PC+2] $0x80 <- M_8[PC+2]
+ valP <- PC + 10 valP <- PC + 10
+
+Execute valE <- 0 + valC valE <- $0x80
+
+Memory
+
+Write Back R[rB] <- valE %rsp <- $0x80
+
+PC Update PC <- valP PC <- PC + 10
+
+
+PC <- PC + 10
+rsp <- $0x80
+
+forgot to substitute the addresses from diagram 4.17.
+*/