- •Лекция 4. Арифметические основы компьютеров Лекция 1
- •1. Система счисления.
- •2. Целые числа в позиционных системах счисления.
- •3. Системы счисления для компьютера.
- •4. Восьмеричная и шестнадцатеричная системы счисления.
- •5. Перевод целого числа из десятичной системы в любую другую позиционную систему счисления.
- •6. Пеpевод пpавильной десятичной дpоби в любую другую позиционную систему счисления.
- •7. Пеpевод числа из двоичной (восьмеpичной, шестнадцатеpичной) системы в десятичную.
- •8. Арифметические операции в позиционных системах счисления.
- •Сложение
- •Вычитание Операция вычитания является обратной операцией по отношению к сложению.
- •Умножение
- •Деление
- •Лекция 2
- •9. Представление в компьютере целых чисел.
- •Диапазоны значений целых чисел без знака
- •Целые числа со знаком
- •Диапазоны значений целых чисел со знаком
- •10. Выполнение арифметических действий над целыми числами компьютером Сложение и вычитание
- •Умножение и деление
- •Лекция 3
- •11. Представление в компьютере вещественных чисел.
- •12. Выполнение арифметических действий над нормализованными числами.
- •Сложение и вычитание
- •Умножение
- •Деление
Деление
Правило. Деление в любой позиционной системе счисления производится по тем же правилам, как и деление уголком в десятичной системе, но с особенностями новой системы счисления.
Пример 8. Разделим число 3010 на число 610.
Ответ: 3010 : 610 = 510 = 1012 = 58.
Пример 9. Разделим число 3510 на число 1410, здесь 3510 = 438 , 1410= 168 .
3510 : 1410 = 2,510
В восьмеричной же системе: 438 : 168 = 2,48.
Действительно, в результате деления уголком получаем:
438 |168 168 168
348 2,4 * 2 * 4
708 348 (6*2=1210 = 148) 708 (6*4 = 2410 = 308)
708 (1*2+1=3) (1*4+3 = 7)
0
Ответ: 3510 : 1410 = 2,510 = 10,12 = 2,48.
Проверка. Для проверки преобразуем полученные частные к десятичному виду: 10,12 = 21 + 2 -1 = 2,510; 2,48 = 2*80 + 4*8-1 = 2,510.
Лекция 2
9. Представление в компьютере целых чисел.
Целые числа могут представляться в компьютере в двоичной системе счисления со знаком или без знака.
Целые числа без знака обычно занимают в памяти один или два байта и принимают в однобайтовом формате значения от 000000002 до 111111112 , а в двухбайтовом формате — от 00000000 000000002 до 11111111 111111112.
Диапазоны значений целых чисел без знака
Формат числа в байтах |
Диапазон |
|
Запись с порядком |
Обычная запись |
|
1 |
0 ... 28–1 |
0 ... 255 |
2 |
0 ... 216–1 |
0 ... 65535 |
Примеры:
а) число в однобайтовом формате: 7210 = 1108 = 010010002
б) это же число в двубайтовом формате: 7210 = 00000000010010002
в) число 65535 в двубайтовом формате: 6553510 = 11111111111111112
Целые числа со знаком
Целые числа со знаком обычно занимают в памяти компьютера один, два или четыре байта, при этом самый левый (старший) разряд содержит информацию о знаке числа. Знак “плюс” кодируется нулем, а “минус” — единицей.
Диапазоны значений целых чисел со знаком
Формат числа в байтах |
Диапазон |
|
Запись с порядком |
Обычная запись |
|
1 |
–27 ... 27–1 |
–128 ... 127 |
2 |
–215 ... 215–1 |
–32768 ... 32767 |
4 |
–231 ... 231–1 |
–2147483648 ... 2147483647 |
Рассмотрим особенности записи целых чисел со знаком на примере однобайтового формата, при котором для знака отводится один разряд, а для цифр абсолютной величины – семь разрядов.
В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком: прямой код, обратный код, дополнительный код. |
Последние две формы применяются особенно широко, так как позволяют упростить конструкцию арифметико-логического устройства компьютера путем замены разнообразных арифметических операций операцией cложения.
Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково — двоичными кодами с цифрой 0 в знаковом разряде.
Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное представление.
1. Прямой код. В знаковый разряд помещается цифра 1, а в разряды цифровой части числа — двоичный код его абсолютной величины. Например: -538 =101010112.
2. Обратный код. Получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы — нулями. Например: -538 = 010101002.
3. Дополнительный код. Получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду.
Например: -538 =
010101002
+ 000000012
= 010101012
Обычно отрицательные десятичные числа при вводе в машину автоматически преобразуются в обратный или дополнительный двоичный код и в таком виде хранятся, перемещаются и участвуют в операциях. При выводе таких чисел из машины автоматически происходит обратное преобразование их в отрицательные десятичные числа. |