From 9109e3a3dcecf4b69d932fc1d733d306c5a3e341 Mon Sep 17 00:00:00 2001 From: Dan Buch Date: Wed, 8 Nov 2023 12:42:46 -0500 Subject: [PATCH] Booping around with kauffman assembly basics https://www-users.cse.umn.edu/~kauffman/2021/06-assembly-basics.pdf --- umn-kauffman/.gitignore | 1 + umn-kauffman/exchange.c | 7 +++++++ umn-kauffman/goop.c | 11 +++++++++++ umn-kauffman/mstore.c | 9 +++++++++ 4 files changed, 28 insertions(+) create mode 100644 umn-kauffman/.gitignore create mode 100644 umn-kauffman/exchange.c create mode 100644 umn-kauffman/goop.c create mode 100644 umn-kauffman/mstore.c diff --git a/umn-kauffman/.gitignore b/umn-kauffman/.gitignore new file mode 100644 index 0000000..5683457 --- /dev/null +++ b/umn-kauffman/.gitignore @@ -0,0 +1 @@ +*.s diff --git a/umn-kauffman/exchange.c b/umn-kauffman/exchange.c new file mode 100644 index 0000000..dbe4b37 --- /dev/null +++ b/umn-kauffman/exchange.c @@ -0,0 +1,7 @@ +long +exchange(long *xp, long y) +{ + long x = *xp; + *xp = y; + return x; +} diff --git a/umn-kauffman/goop.c b/umn-kauffman/goop.c new file mode 100644 index 0000000..b745c6b --- /dev/null +++ b/umn-kauffman/goop.c @@ -0,0 +1,11 @@ +#include + +int +main(int argc, char *argv[]) +{ + for (int i = argc; i > -1; i--) { + printf("(%d): %s\n", i, argv[i]); + } + + return 0; +} diff --git a/umn-kauffman/mstore.c b/umn-kauffman/mstore.c new file mode 100644 index 0000000..071d2f8 --- /dev/null +++ b/umn-kauffman/mstore.c @@ -0,0 +1,9 @@ +long +mult2(long a, long b); + +void +multstore(long x, long y, long *dest) +{ + long t = mult2(x, y); + *dest = t; +}