diff --git a/src/blog/zh/arithmetic-in-computer.md b/src/blog/zh/arithmetic-in-computer.md
index e65a1b6..fb9dd34 100644
--- a/src/blog/zh/arithmetic-in-computer.md
+++ b/src/blog/zh/arithmetic-in-computer.md
@@ -4,8 +4,8 @@ pubDate: 2026-08-04
description: '欢迎来到琪露诺的奇妙数学教室,让我们从……加减法开始吧!'
author: "三叶"
image:
- url: "https://files.seeusercontent.com/2026/08/04/fkE6/pasted-image-1785836458506.webp"
- alt: "bintree"
+ url: "https://files.seeusercontent.com/2026/09/17/Dn5p/_20260917235541_13_363.webp"
+ alt: "ciruno"
tags: ["学习笔记", "计算机组成原理"]
---
@@ -95,7 +95,7 @@ $$
没错,**32位操作系统**代表着,对于`int`整形的变量,一共有32个**比特**用来存储这么一个数。
-也就是说,二进制数的长度最长可以有32位。
+也就是说,整形二进制数的长度最长可以有32位。
好多!那么程序员在调试的时候总不能用手指头指着屏幕上的0和1一个一个数过去吧?
@@ -149,9 +149,7 @@ $$
$$
130\bmod 128=2
$$
-没错,我们这样子计算,刚好就是在将计算结果对$128$进行[模运算](https://zh.wikipedia.org/zh-cn/%E6%A8%A1%E7%AE%97%E6%95%B8)!
-
-那我们是不是可以巧妙地利用这一特性,通过加法来实现减法呢?!
+没错,我们这样子计算,刚好就是在将计算结果对$128$进行[模运算](https://zh.wikipedia.org/zh-cn/%E6%A8%A1%E7%AE%97%E6%95%B8)。那我们是不是可以巧妙地利用这一特性,通过加法来实现减法呢?
比如说我们有两个数:$50$和$30$,我们需要计算$50-30$
@@ -213,7 +211,7 @@ unsigned int i = 129;
## 二、加减法的运算电路
-在计算机中,传统的**运算器**由**算术逻辑单元ALU**、**移位器**、**状态寄存器PSW**和**通用寄存器组**等组成。
+在计算机中,**传统**的**运算器**由**算术逻辑单元ALU**、**移位器**、**状态寄存器PSW**和**通用寄存器组**等组成。
但是我们先别管那么多,首先我们来看ALU。ALU的核心部件是**加法器**。
@@ -266,4 +264,29 @@ $$
我们把它封装起来,仅对外保留输入输出,那它的逻辑符号表示为:
-
\ No newline at end of file
+
+
+### 2. 串行进位加法器
+
+将$n$个全加器级联就可以构成$n$位串行进位加法器(又称行波进位加法器),如下图所示
+
+
+
+将它们这样子串在一起,就可以轻松实现两个二进制数的加法。
+
+我们把它封装成一个整体,就得到了传统的**加法器**。
+
+### 3. 带标志加法器
+
+对于$n$位加法器来说,除了得到运算结果外,我们经常需要知道计算过程中是否发生了溢出、结果正负性、结果是否为零等等信息。
+
+我们要求加法器能生成以下标志位:
+
+- $OF$:**溢出标志**,为`1`表示溢出,`0`表示未溢出。$OF=C_n \oplus C_{n-1}$
+- $SF$:**符号标志**,等于结果的最高有效位,`1`表示负,`0`表示正。$SF=S_i$
+- $ZF$:**零标志**,`1`表示加减运算的结果为$0$。在所有位均为`0`时设置为`1`。
+- $CF$:进位/借位标志,用于判断无符号数的加减运算是否发生溢出。`1`表示溢出,`0`表示未溢出。
+
+加法器的符号就可以表示为:
+
+