Диапазоны значений целых чисел без знака
Лекция 4. Арифметические основы компьютеров
Лекция 1
Система счисления.
Система счисления — это способ записи чисел с помощью заданного набора цифр и символов.
|
| Существуют позиционные и непозиционные системы счисления.
В непозиционных системах вес цифры, определяющий значение числа, не зависит от ее позиции в записи числа. Так, в римской системе счисления в числе ХХХ (тридцать ) вес цифры Х в любой позиции равен десяти.
В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, представляющих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая – 7 единиц, а третья – 7 десятых долей единицы. Число 757,7 означает по сути сокращенную запись выражения:
700 + 50 + 7 + 0,7 = 7•102 + 5•101 + 7•100 + 7•10-1 = 757,7.
Любая позиционная система счисления характеризуется своим основанием.
Основание позиционной системы счисления определяется количеством цифр, используемых для записи чисел в данной системе.
| В десятичной системе используется десять различных цифр. Однако
возможно бесчисленное множество позиционных систем: двоичная, троичная, четверичная и т.д. Запись чисел в системе счисления с основанием - qозначает сокращенную запись выражения в общем виде:
an-1 an-2…. a1 a0 , a-1 a-2… a-m=an-1 qn-1 + an-2 qn-2+ ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m,
где ai – цифры числа в системе счисления; n и m – число целых и дробных разрядов, соответственно.
Целые числа в позиционных системах счисления.
Целые числа в любой системе счисления порождаются с помощью общего Правила счета:
Для образования целого числа, следующего за любым данным целым числом, нужно увеличить самую правую цифру числа на единицу; но если в результате этой операции какая-либо цифра стала нулем, то тогда нужно увеличить цифру, стоящую слева от неё на единицу.
| Применяя это правило, можно записать первые десять целых чисел
· в двоичной системе: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001;
· в троичной системе: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100;
· в пятеричной системе: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14;
· восьмеричной системе: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11.
Системы счисления для компьютера.
Кроме десятичной широко используются системы с основанием, являющимся целой степенью числа 2, а именно:
· двоичная (используются цифры 0, 1);
· восьмеричная (используются цифры 0, 1, ..., 7);
· шестнадцатеричная (для первых десяти цифр от нуля до девяти используются цифры 0, 1, ..., 9, а для следующих цифр — от десяти до пятнадцати – в качестве цифр используются символы A, B, C, D, E, F).
Для технической реализации в компьютерах используется двоичная система счисления, потому, что она намного проще десятичной в реализации:
а) для нее нужны технические устройства только с двумя устойчивыми состояниями (есть ток — нет тока, намагничен — не намагничен и т.п.);
б) возможно применение аппарата булевой алгебры для выполнения логических преобразований информации.
Недостатком двоичной системы является быстрый рост числа разрядов, необходимых для записи чисел.
Восьмеричная и шестнадцатеричная системы счисления.
Двоичная система, удобная для компьютеров, для человека неудобна из-за ее громоздкости и непривычной записи.
Перевод чисел из десятичной системы в двоичную и наоборот выполняет сама машина. Однако, чтобы использовать компьютер, следует понимать слово машины. Для этого и разработаны восьмеричная и шестнадцатеричная системы.
Правило:Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему: достаточно каждую цифру числа заменить эквивалентной ей двоичной триадой (тройкой цифр для восьмеричной) или тетрадой (четверкой двоичных цифр для 16-ой системы).
| Например: 1538 = 001 101 0112 = 011010112.
Правило:Чтобы, наоборот, перевести число из двоичной системы в восьмеричную или шестнадцатеричную, его нужно разбить влево и вправо от запятой на триады (для восьмеричной) или тетрады (для шестнадцатеричной) и каждую такую группу заменить соответствующей восьмеричной (шестнадцатеричной) цифрой.
| Например: 101001112 = 010 100 1112 = 2478 .
МСИ-1, 23.11.11
Перевод целого числа из десятичной системы в любую другую позиционную систему счисления.
Правило:При переводе целого десятичного числа в систему с основанием qего необходимо последовательно делить на q до тех пор, пока не останется остаток, меньший или равный q–1. Число в системе с основанием q записывается тогда, как последовательность остатков от деления, но записанных в обратном порядке, начиная с последней цифры.
| Пример: Перевести число 7510 из десятичной системы в двоичную, восьмеричную и шестнадцатеричную:
Ответ: 7510 = 1 001 0112 = 1138 = 4B16.
2 8 16
75 | 1 75 | 3 75 | B (1110)
37 | 1 9 | 1 4 | 4
18 | 0 1 | 1 0 |
9 | 1 0 |
4 | 0 /\
2 | 0 |
1 | 1 |
0 |
Пеpевод пpавильной десятичной дpоби в любую
Другую позиционную систему счисления.
Правило: Пpи переводе правильной десятичной дpоби в систему счисления с основанием q необходимо сначала саму дробь, а затем дробные части всех последующих произведений последовательно умножать на q, отделяя после каждого умножения целую часть пpоизведения. Тогда число в новой системе счисления записывается как последовательность полученных целых частей пpоизведения.
| Умножение пpоизводится до тех поp, пока дpобная часть пpоизведения не станет pавной нулю. Это значит, что был сделан точный пеpевод числа. В пpотивном случае пеpевод осуществляется до заданной точности. Достаточно того количества цифp в pезультате, котоpое поместится в ячейку памяти.
Пример: Перевести правильную дробь 0,3510 из десятичной системы в двоичную, восьмеричную и шестнадцатеричную:
Например: 0,3510 *8 = (0,) (2),8*8 = (6),4*8 = (3),2 = 0,2638
0,3510 *2 = (0,) (0),7*2 = (1),4*2 = (0),8*2=(1),6*2=(1),2*2=(0),4=0,0101102
0,3510 *16 = (0,) (5),6*16 = (9),6 = 0,5916
Ответ: 0,3510 = 0,0101102 = 0,2638 = 0,5916 .
Пеpевод числа из двоичной (восьмеpичной, шестнадцатеpичной) системы в десятичную.
Правило: При переводе числа из двоичной (восьмеричной, шестнадцатеричной) системы в десятичную надо это число представить в виде суммы степеней основания его системы счисления.
| Примеp: 1138 = 1*82 + 1*81 + 3*80 = 64+ 8 + 3 = 7510.
Арифметические операции в позиционных системах счисления.
Правила выполнения арифметических операций в десятичной системе— это сложение, вычитание, умножение столбиком и деление углом. Эти правила также применимы и ко всем другим позиционным системам счисления.
Сложение
Для сложения используется следующее Правило Счета - при сложении цифры суммируются по разрядам, и если при этом возникает избыток, то переносится влево (в старший разряд) единица.
Пример 1. Сложим целые числа 1510 и 610 в различных системах счисления.
178 (1510) F16 (1510) 11112 (1510)
+ 68 + 616 + 1102 (610)
----- ------------ -----------
258 (1310-810=58) 1516 (2110-1610=516) 101012
Ответ: 1510 + 610 = 2110 = 101012 = 258 = F16+616 = 1516.
Проверка. Для контроля преобразуем полученные суммы к десятичному виду и получим в результате число 2110: 101012 = 1*24 + 1*22 + 1*20 = 16+4+1 = 2110, 258 = 2*81 + 5*80 = 16 + 5 = 2110, 1516 = 1*161 + 5*160 = 16+5 = 2110.
Пример 2. Сложим в различных системах счисления вещественные числа 141,510 и 59,7510.
Ответ: 141,510 + 59,7510 = 201,2510 = 11001001,012 = 311,28 = C9,416
8 0,2510 *8= 0, (2),0 = 0,28
201 | 1
25 | 1
3 | 3
0 | 3118 +0,28 = 311,28
Проверка. Для контроля преобразуем полученные суммы к десятичному виду:
11001001,012 = 27 + 26 + 23 + 20 + 2-2 = 128+64+8+1+ 0,25= 201,2510
311,28 = 3*82 + 1•81 + 1*80 + 2*8-1 = 192+8+1+0,25= 201,2510
C9,416 = 12*161 + 9*160 + 4*16-1 = 192+9+0,25= 201,2510
Вычитание
Операция вычитания является обратной операцией по отношению к сложению.
Пример 3.
Вычтем единицу из чисел в разных системах счисления: 102, 108 и 1016 :
102 – 12 = 12 ; 108 - 1= 78 ; 1016 - 1 = F16 (1510).
Пример 4. Вычтем число 59,7510 из числа 201,2510.
Ответ: 201,2510 – 59,7510 = 141,510 = 10001101,12 = 215,48 = 8D,816.
8 0,510* 8 = 0, (4)0 = 0,48
141 | 5
17 | 1
2 | 2
0 | 2158 + 0,48 = 215,48
Проверка. Преобразуем полученные разности к десятичному виду: 10001101,12 = 27 + 23 + 22 + 20 + 2–1 = 128+8+4+1+0,5= 141,510; 215,48 = 2*82 + 1*81 + 5*80 + 4*8–1 = 128+8+5+0,5= 141,510; 8D,816 = 8*161 + D*160 + 8*16–1 = 128+13+0,5= 141,510.
Умножение
Правило. Для умножения многозначных чисел в различных позиционных системах счисления можно использовать обычный алгоритм перемножения чисел в столбик ( как в десятичной системе счисления), но при этом перемножение и сложение чисел необходимо выполнять по правилам арифметики уже новой системы счисления.
Умножение столбиком в двоичной системе сводится к сдвигам множимого влево и сложениям по разрядам.
Пример 7. Перемножим числа 510 и 610.
Ответ: 510*610 = 3010 = 111102 = 368.
2 или 1012 (510)
3010 | 0 *1102 (610)
15 | 1 ------------
7 | 1 0002
3 | 1 + 101
1 | 1 101
0 --------------
111102
Проверка. Преобразуем полученные произведения к десятичному виду:
111102 = 24 + 23 + 22 + 21 = 3010
368 = 3•81 + 6•80 = 24 + 6 = 3010.
Деление
Правило. Деление в любой позиционной системе счисления производится по тем же правилам, как и деление уголком в десятичной системе, но с особенностями новой системы счисления.
Пример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)
Ответ: 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
Представление в компьютере целых чисел.
Целые числа представляются в компьютере в двоичной системе счисления со знаком или без знака.
Целые числа без знака обычно занимают в памяти один или два байта и принимают в однобайтовом формате значения от 000000002 до 111111112 , а в двухбайтовом формате — от 00000000 000000002 до 11111111 111111112.
Диапазоны значений целых чисел без знака
Формат числа
в байтах
| Диапазон
| Запись с порядком
| Обычная запись
|
| 0 ... 28–1
| 0 ... 255
|
| 0 ... 216–1
| 0 ... 65535
|
Примеры:
а) число в однобайтовом формате: 7210 = 1108 = 010010002
б) это же число в двубайтовом формате: 7210 = 00000000010010002
в) число 65535 в двубайтовом формате: 6553510 = 11111111111111112
Целые числа со знаком
Целые числа со знаком обычно занимают в памяти компьютера один, два или четыре байта, при этом самый левый (старший) разряд содержит информацию о знаке числа. Знак “плюс” кодируется нулем, а “минус” — единицей.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|