From 58b7fb0ef0ed7c4495e446f16ad3f0b617a16c67 Mon Sep 17 00:00:00 2001 From: rogerflowey Date: Fri, 17 Jan 2025 11:02:30 +0800 Subject: [PATCH] upload my lecture note --- ...45\210\206\346\236\220\346\234\272note.md" | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 "week2/\345\210\206\346\236\220\346\234\272note.md" diff --git "a/week2/\345\210\206\346\236\220\346\234\272note.md" "b/week2/\345\210\206\346\236\220\346\234\272note.md" new file mode 100644 index 0000000..ed965d3 --- /dev/null +++ "b/week2/\345\210\206\346\236\220\346\234\272note.md" @@ -0,0 +1,28 @@ +### 概念 +- **可编程机械计算机**:具备存储器、运算器、控制系统、输入输出。 +- **哈佛结构**:指令存储与数据存储分离。 +- **图灵完备**:支持循环、条件分支,类似**汇编语言**。 + + +### 语法 +- **基本指令**: + - `N k n`:将值$n$ 存入变量 $v_k$。 + - `+-*÷`:设置为相应模式。 + - `L k`:加载变量 $v_k$ 的值到输入列。 + - `S k`:将输出列的值存储到变量 $v_k$。 + - `P k`:打印变量$v_k$的值。 + +- **控制指令**: + - `B n`:向后跳转 $n$ 张卡片。 + - `F n`:向前跳转 $n$ 张卡片。 + - `?B n`:如果 `runup` 杠杆被设置,则向后跳转 $n$ 张卡片。 + - `?F n`:如果 `runup` 杠杆被设置,则向前跳转 $n$ 张卡片。 + +- **运算规则**: + - **加法**:将两个数加载到输入列 $I_1$ 和 $I_2$,结果存储在输出列 $E$。 + - **乘法**:结果存储在 $E$(低位)和 $E'$(高位)两列中。 + - **除法**:被除数存储在$I_1$(低位)和$I'_1$(高位)两列中,商存储在 $E'$,余数存储在 $E$。 + +- **条件与循环**: + - 通过 `runup` 杠杆和条件跳转指令(`?B n`、`?F n`)实现条件分支。 + - 通过 `B n` 和 `F n` 实现循环操作。 \ No newline at end of file