Презентация "Кодирование целых чисел"
Подписи к слайдам:
Кодирование целых чисел.
- Пляшешник А.В.
- МОУ СОШ №5 города Ржева Тверской области
- Для работы с числами человек использует в основном две формы для их записи – естественную и экспоненциальную.
- Экспоненциальная форма записи чисел используется для обозначения очень больших или очень маленьких чисел.
- Например 0,000002=0,2*10-5 или 1000=103.
- Целые числа без знака
- (только положительные)
- Целые числа со знаком (положительные и отрицательные)
- Для хранения чисел в памяти отводится определённое количество разрядов, в совокупности представляющих собой k-разрядную сетку.
- Обычно занимают в памяти один или два байта.
- В однобайтовом формате значения от 000000002 до 111111112 (0…255)
- Пример 7210=10010002
- Биты числа
- 0
- 1
- 0
- 0
- 0
- 1
- 0
- 0
- номера разрядов 7 6 5 4 3 2 1 0
- В двухбайтовом формате значения
- от 00000000 000000002
- до 11111111 111111112
- (0…65535)
- Пример 7210=10010002
- 0
- 1
- 0
- 0
- 0
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- Обычно занимают в памяти компьютера 1, 2 или 4 байта, при этом самый левый (старший) разряд содержит информацию о знаке числа. Знак «+» кодируется 0, а «-» - 1
- В однобайтовом формате значения от -128 до 127.
- В двухбайтовом формате значения
- От -32 768 до 32 767.
- В четырёхбайтовом формате значения от -2 147 483 648 до
- 2 147 483 647.
- Примеры.
- 110=12
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 1
- Знак числа «+»
- В компьютерной технике применяются три формы записи (кодирования) целых отрицательных чисел: прямой код, обратный код, дополнительный код.
- В знаковый разряд помещается цифра 1, а в разряды цифровой части – двоичный код его абсолютной величины.
- Пример
- Прямой код числа -1:
- 1
- 0
- 0
- 0
- 0
- 0
- 0
- 1
- Знак числа «-»
- Получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы – нулями.
- Пример
- Число: -1.
- Код модуля числа: 0 0000001.
- Обратный код числа: 1 1111110.
- 1
- 1
- 1
- 1
- 1
- 1
- 1
- 0
- Получается образованием обратного кода с последующем прибавлением единицы к его младшему разряду.
- Пример
- Число: -1.
- Код модуля числа: 0 0000001.
- Обратный код числа: 1 1111110
- +1
- 1 1111111
- 1
- 1
- 1
- 1
- 1
- 1
- 1
- 1
- В большинстве компьютеров операция вычитание не используется. Вместо неё производится сложение уменьшаемого с обратным или дополнительным кодом вычитаемого. Это позволяет существенно упростить конструкцию АЛУ.
- 3 0 0000011
- 7 0 0000111
- 10 0 0001010
- 3 0 0000011
- -10 1 1110101
- -7 1 1111000
- +
- +
- +
- +
- Обратный код числа -10
- Обратный код числа -7
- 10 0 0001010
- -3 1 1111100
- 7 0 0000110
- +
- +
- +1
- 0 0000111
- Обратный код числа -3
- Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) переносом единицы из знакового разряда в младший разряд суммы.
- -3 1 1111100
- -7 1 1111000
- -10 1 1110100
- +
- +
- Обратный код числа -3
- Обратный код числа -7
- +1
- 1 1110101
- Обратный код числа -10
- Полученный первоначально неправильный результат (обратный код числа -11 вместо обратного кода числа -10) компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы.
- При переводе результата в прямой код биты цифровой части числа инвертируются: 1 0001010 = -10
- Представить число 21 в однобайтовой разрядной сетке.
- Представить число 21 и -21 в двухбайтовой разрядной сетке.