summaryrefslogtreecommitdiff
path: root/86uwkq.md
diff options
context:
space:
mode:
Diffstat (limited to '86uwkq.md')
-rw-r--r--86uwkq.md41
1 files changed, 41 insertions, 0 deletions
diff --git a/86uwkq.md b/86uwkq.md
new file mode 100644
index 0000000..3307c91
--- /dev/null
+++ b/86uwkq.md
@@ -0,0 +1,41 @@
+---
+id: 86uwkq
+date: 2026-07-20T08:57:06+0300
+languages: [ru]
+aliases:
+
+reviews:
+
+tags:
+- draft
+- knowledge
+---
+# Двоичная арифметика
+
+В рамках двоичной логики можно выполнять следующие арифметические операции:
+1. Сложение
+2. Вычитание
+3. Умножение
+4. Деление
+5. Сдвиг (умножение/деление на степени двойки)
+
+Сложение, вычитание, умножение и деление выполняются по тем же правилам, что и в других системах счисления.
+Однако вычитание создаёт вопрос о представлении отрицательных чисел в двоичном коде. После решения
+этой задачи, вычитание можно также свести к сложению: A - B = A + (-B).
+
+Также в рамках двоичной арифметики всегда может произойти проблема переполнения - случай, в котором
+полученное значение больше предельного значения, которое может сохранить двоичный код указанной длины.
+В таких случаях говорится, что произошло переполнение двоичного кода.
+
+Для выполнения умножения и деления - необходимо использовать итеративные алгоритмы, схожие со
+школьными методами умножения и деления в столбик.
+
+В зависимости от выбранного знакового двоичного кода, следующие операции могут требовать анализ
+знаковых разрядов, для получения правильного варианта. В случае использования дополнительного кода,
+все операции можно выполнять отдельного рассмотрения знаковых разрядов.
+
+## Up
+- [Системы счисления](o6cxpv)
+
+## Related
+- [Машинные коды чисел](vjh3dj)