ответвлено от main/python
comments: дополнительный код
Этот коммит содержится в:
Двоичные данные
assets/numberwheel.jpg
Обычный файл
Двоичные данные
assets/numberwheel.jpg
Обычный файл
Двоичный файл не отображается.
|
После Ширина: | Высота: | Размер: 17 KiB |
25
comments.md
25
comments.md
@@ -1,9 +1,32 @@
|
|||||||
---
|
---
|
||||||
title: Комментарии к пособию
|
title: Комментарии к пособию
|
||||||
author: Дмитрий Козлюк
|
author: Дмитрий Козлюк
|
||||||
date: 2022-11-28
|
date: 2024-10-07
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Тема 3
|
||||||
|
|
||||||
|
### 5.1
|
||||||
|
|
||||||
|
Почему `~9` дает `-10`, а не `-9`?
|
||||||
|
|
||||||
|
1. Двоичные числа в компьютере представлены в [дополнительном коде][complement].
|
||||||
|
|
||||||
|
2. Если числа представлены $N$ битами, то в дополнительном коде число $(-X)$
|
||||||
|
представляется как $2^N - X$, что легко видеть на рисунке:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
3. Можно заметить, что `~X` есть то же самое, что `(2**N - 1) - X`,
|
||||||
|
потому что при вычитании из `11....11` все 0 заменяются на 1 и наоборот.
|
||||||
|
Итого `~X` имеет то же битовое представление, что и `-(X+1)`.
|
||||||
|
|
||||||
|
Иначе это можно видеть из рисунка:
|
||||||
|
$9$ есть десятое число, если двигаться в сторону положительных,
|
||||||
|
а $(-10)$ есть десятое число, если двигаться в сторону отрицательных.
|
||||||
|
|
||||||
|
[complement]: https://ru.wikipedia.org/wiki/%D0%94%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4
|
||||||
|
|
||||||
## Тема 4
|
## Тема 4
|
||||||
|
|
||||||
### 2.4, 2.5
|
### 2.4, 2.5
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user