Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теоретические основы информатики. Учебно-методическое пособие
.pdf
2. 389-Z2; 0,8427-Z6; 45267-Z16; 980,2221-Z8;
+ 0 1 * 0 1
0
0
1
0
0
0
1
1
10
1
0
1
3. 37652; 0,7889; 343,89812
4. 11010001110; 0,111010101; 101110101,10100111
5. 23134 - Z14; 85A15 - Z7
§ 2.4. Арифметические операции
Основное преимущество позиционных С.С. на другими заключается в том,
что действия над числами в такой системе счисления выполняются поразрядно
(вспомните, как вы складываете и умножаете, вычитаете и делите многозначные
числа в десятичной системе). Все, что нужно знать, - это таблицы сложения и
умножения для однозначных чисел. Алгоритмы арифметических операций в
позиционной p-ой С.С. имеет следующий вид:
Пусть
,
,
, где
B. Результат выполнения операций над цифрами
и одной позиции представляется двумя значениями:
соответствующей операции в данном разряде и
-- перенос в старший разряд или
– результат
заем в старшем разряде.
Сложение:
;
.
Умножение:
,
.
Вычитание:
,
.
Деление: выполнение операции деления не может быть сведено к операциям
над отдельными цифрами. Поэтому деление выполняется по
аналогии с делением в 10-ой С.С.
Самая замечательная система счисления - двоичная. В ней используются
только две цифры 0 и 1. И значит, имеется только два однозначных числа. Поэтому
в этой нумерации очень просто выглядят таблицы сложения и умножения, которые
необходимы для выполнения действий в 2-ой С.С.:
21

Практическая работа №5
Задание 5.1. Выполните операцию сложения:
Задание 5.2. Выполните операцию вычитания:
Задание 5.3. Выполните операцию умножения (результат после запятой -
четырехзначный, округление производить, если старшая отбрасываемая цифра
больше или равна
):
Вопросы для самоконтроля.
1. Каковы способы перевода чисел из одной системы в другую?
2. В чем заключается преимущество использования восьмеричной
шестнадцатеричной систем счисления в вычислительной технике?
3. Как выглядят таблицы сложения и умножения?
4. Какие символы используются для записи чисел в двоичной системы
счисления, восьмеричной, шестнадцатеричной?
5. Чему равны веса разрядов слева от точки, разделяющей целую и дробную
части, в двоичной системе счисления (восьмеричной, шестнадцатеричной)?
6.Чему равны веса разрядов справа от точки, разделяющей целую и дробную
части, в двоичной системе счисления (восьмеричной, шестнадцатеричной)?
Тема 3. Представление чисел в компьютере
Безусловно, одним из основных направлений применения компьютеров
были и остаются разнообразные вычисления. В связи с этим встает вопрос о
выборе оптимального представления чисел в компьютере, который и будет
рассмотрен далее.
22

§ 3.1. Преобразование нормализованных чисел
В позиционной С.С. любое вещественное число может быть представлено в
двух формах – естественной и нормализованной. В естественной форме в числе
представлена целая и дробная части, между которыми помещается разделитель
(запятая или точка). Например: 987,654 (представление числа с фиксированной
запятой). А число записанное в нормализованной форме имеет следующий вид:
– порядок нормализованного числа, .
Например:
Обобщим нормализованную форму записи числа на произвольную С.С.
при этом мантисса нормализованного числа лежит в интервале
, где – мантисса нормализованного числа, ;
.
(т.е. первая значащая цифра мантиссы всегда ненулевая), а
порядок
нормализованного числа представлен в p-ой С.С.
Перевод нормализованных чисел из одной С.С. в другую осуществляется
через переход к естественной форме, А именно, нормализованное число переводим
в естественную форму, осуществляем перевод в искомую С.С., а затем опять
нормализуем число.
:
:
.
.
Практическая работа №6
Задание 6.1. Запишите числа в естественной форме:
Задание 6.2. Нормализуйте числа:
Задание 6.3. Запишите числа в нормализованной форме:
23

Задание 6.4. Переведите числа из 10-ой С.С. в 2-ую (мантиссу записать с
десятью знаками):
Задание 6.5. Переведите числа из 10-ой С.С. в 8-ую (мантиссу записать с
пятью знаками):
Задание 6.6. Переведите числа, приведенные в задании 5.5., из 10-ой С.С.
в 16-ую (мантиссу записать с тремя знаками):
Задание 6.7. Переведите числа, приведенные в задании 5.5., из 10-ой С.С.
в 3-ую (мантиссу записать с семью знаками):
Задание 6.8. Переведите числа из 2-ой С.С. в 10-ую (мантиссу записать с
четырьмя знаками):
Задание 6.9. Переведите числа из 8-ой С.С. в 10-ую (мантиссу записать с
четырьмя знаками):
Задание 6.10. Переведите числа из 16-ой С.С. в 10-ую (мантиссу записать
с четырьмя знаками):
Задание 6.11. Переведите числа из 3-ой С.С. в 10-ую (мантиссу записать с
тремя знаками):
24

§ 3.2. Арифметические операции с нормализованными числами
Рассмотрим алгоритмы выполнения арифметических чисел над
нормализованными числами. Пусть , где * - любая операция;
,
Алгоритм сложения и вычитания состоит из следующих шагов:
1) Составить разность порядков
2) Если , сдвинуть мантиссу числа B на разрядов вправо; если ,
сдвинуть мантиссу числа A на разрядов вправо; если , мантиссы не
сдвигаются (разряды, выходящие за пределы дополнительного – го
разряда, теряются без округления).
3) Выполнить операцию сложения или вычитания над мантиссами.
4) Присвоить результату порядок большего числа.
5) Нормализовать полученную сумму или разность (если необходимо).
Алгоритм операции умножения состоит из следующих шагов:
1) Перемножить мантиссы сомножителей (в произведении сохранить
разряда).
2) Вычислить порядок произведения:
3) Нормализовать полученное число (если необходимо; округление производить
по - му разряду).
,
(мантиссы и порядки включают знак).
.
.
.
;
.
Алгоритм операции деления состоит из следующих шагов:
1) Мантиссу делимого разделить на мантиссу делителя (в произведении
сохранить разряда).
2) Вычислить порядок частного:
.
3) Нормализовать полученное число (если необходимо; округление производить
по - му разряду).
Практическая работа №7
Задание 7.1. Выполните операцию сложения:
Задание 7.2. Выполните операцию вычитания:
25

Задание 7.3. Выполните операцию умножения:
1.
a. 101102 + 10101
2
b. 4,A2B
16
+ EFB,6E51
16
c. 0,7574738 – 0,273654
8
d. 32,60058 ∙ 775,46
8
3.
a. 0,572348 ∙ 166 + 0,998877 ∙ 163
b. 0,221211 ∙ 3
-22
- 0,101201 ∙ 3
-20
c. 0,374022 ∙ 85 ∙ 0,760215 ∙ 81
d. 0,251691 ∙ 105 : 0,390215 ∙ 10-2
2.
0,3796 ∙ 10-1
→ 3 C.C. (7 знаков);
→ 16 С.С. (3 знака)
4.
0,11000001010001 ∙ 2
1010
1.
a) 1001012 + 101
2
b) AB,631E
16
+ 21,EFED
16
c) 0,2022213 – 0,012222
3
d) 505,0558 ∙ 5056,6
8
3.
a) 0,9BABCD ∙ 164 + 0,A3BCD6 ∙ 164
b) 0,221021 ∙ 35 - 0,221021 ∙ 32
c) 0,100562 ∙ 8-2 ∙ 0,115763 ∙ 8-3
d) 0,389012 ∙ 10-3 : 0,105626 ∙ 106
2.
0,1516 ∙ 10-2
→ 8 C.C. (5 знаков);
→ 16 С.С. (3 знака)
4.
0,1000110000101 ∙ 2
101
Задание 7.4. Выполните операцию деления:
Самостоятельная работа №3
1. Выполнить действия
2. Перевести число из 10-ой С.С. в указанные (мантиссу записать с указанным
количеством знаков)
3. Выполнить действия
4. Перевести число в 10-ую С.С. (мантиссу записать с четырьмя знаками)
Вариант 1.
Вариант 2.
26

Вариант 3.
1.
a)101112 + 1001
2
b) EA,289
16
+ 15,A90F
16
c)0,3575778 – 0,234075
8
d) 357,0268 ∙ 4070,25
8
3.
a) 0,100100 ∙ 16-4 + 0,BBAADD ∙ 163
b) 0,100110 ∙ 2
-10
- 0,101100 ∙ 2
-11
c) 0,126027 ∙ 8-4 ∙ 0,231707 ∙ 86
d) 0,721516 ∙ 10-4 : 0,282653 ∙ 10-6
2.
0,5766 ∙ 10-3
→ 3 C.C. (7 знаков);
→ 16 С.С. (3 знака)
4.
0,10010001100111 ∙ 2
1110
1.
a) 1010112 + 1011
2
b) F5ED,19
16
+ 5ED,CA
16
c) 0,20000113 – 0,102122
3
d) 66,75778 ∙ 766,756
8
3.
a) 0,2EFFD5 ∙ 162 + 0,FE25DF ∙ 161
b) 0,121021 ∙ 310 - 0,121022 ∙ 3
-10
c) 0,327235 ∙ 82 ∙ 0,276755 ∙ 8-7
d) 0,370037 ∙ 102 : 0,654627 ∙ 104
2.
0,1327 ∙ 102
→ 8 C.C. (5 знаков);
→ 16 С.С. (3 знака)
4.
0,1111111101101 ∙ 2
-1011
1.
e. 110102 + 10101
2
f. 4,E2C
16
+ EDB,6E51
16
g. 0,7554728 – 0,273654
8
h. 23,60048 ∙ 735,46
8
3.
a. 0,581248 ∙ 166 + 0,938877 ∙ 163
b. 0,201211 ∙ 3
-22
- 0,122201 ∙ 3
-20
c. 0,375522 ∙ 85 ∙ 0,773215 ∙ 81
d. 0,213692 ∙ 105 : 0,490315 ∙ 10-2
2.
0,5986 ∙ 10-1
→ 3 C.C. (7 знаков);
→ 16 С.С. (3 знака)
4.
0,11010101101001 ∙ 2
1010
1.
a. 1011012 + 101
2
b. CA631E
16
+ 21,E9ED
16
c. 0,2020113 – 0,012022
3
d. 503,0578 ∙ 5026,6
8
3.
a) 0,9BCDAA ∙ 164 + 0,A3BED6 ∙ 164
b) 0,212001 ∙ 35 - 0,201021 ∙ 32
c) 0,120762 ∙ 8-2 ∙ 0,131763 ∙ 8-3
d) 0,345012 ∙ 10-3 : 0,102626 ∙ 106
Вариант 4.
Вариант 5.
Вариант 6.
27

2.
0,1572 ∙ 10-2
→ 8 C.C. (5 знаков);
→ 16 С.С. (3 знака)
4.
0,1010111100101 ∙ 2
101
Вариант 7.
1.
a. 100112 + 1011
2
b. ED,239
16
+ 15,A99F
16
c. 0,3125738 – 0,234075
8
d. 257,0168 ∙ 4060,25
8
3.
a) 0,200030 ∙ 16-4 + 0,BBAADD ∙ 163
b) 0,101010 ∙ 2
-10
- 0,101010 ∙ 2
-11
c) 0,120257 ∙ 8-4 ∙ 0,241707 ∙ 86
d) 0,730516 ∙ 10-4 : 0,292653 ∙ 10-6
2.
0,5667 ∙ 10-3
→ 3 C.C. (7 знаков);
→ 16 С.С. (3 знака)
4.
0,10110101100101 ∙ 2
1110
1.
a. 1110112 + 1011
2
b. F5CA,19
16
+ 5E9,CA
16
c. 0,20201113 – 0,102122
3
d. 65,75338 ∙ 766,756
8
3.
a) 0,2EEED2 ∙ 162 + 0,FD25DF ∙ 161
b) 0,122101 ∙ 310 - 0,121022 ∙ 3
-10
c) 0,332335 ∙ 82 ∙ 0,276755 ∙ 8-7
d) 0,580037 ∙ 102 : 0,654627 ∙ 104
2.
0,1517 ∙ 102
→ 8 C.C. (5 знаков);
→ 16 С.С. (3 знака)
4.
0,1110011110101 ∙ 2
-1011
Вариант 8.
Тема 4. Кодирование информации в компьютере
Теория кодирования информации является одним из основных разделов
теоретической информатики. К основным задачам, решаемым в данном разделе,
относятся: кодирование числовой и символьной информации.
§ 4.1. Кодирование в компьютере символьной информации
В силу безусловного приоритета 2-ой С.С. при внутреннем представлении
информации в компьютере кодирование символьной информации основывается на
сопоставлении каждому из них определенной группы двоичных знаков (двоичный
код символа). При этом из технических соображений и из соображений удобства
кодирования-декодирования следует пользоваться двоичными кодами равной
длины. Минимальное достаточное значение длины равно 8: это 256 комбинаций
28

двоичных символов (). Таким образом, для кодирования символьной
информации достаточно 8 бит, т.е. 1 байта.
Таблица ASCII – стандартный американский код для обмена информацией
(международная система байтового кодирования, созданная в 1963 году). По
таблице каждому символу ставятся в соответствия 16-ые числа по правилу: первая
часть – номер столбца, вторая часть – номер строки. При необходимости из 16-ой
С.С можно перейти в 2-ую. Тогда, русской букве «д» соответствует код
.
или
§ 4.2. Кодирование чисел в компьютере
В предыдущем разделе обсуждалась возможность представления чисел в
двоичной системе счисления. Результатом этого обсуждения стали следующее
резюме:
1) Двоичное представление возможно.
2) Имеется однозначное соответствие между двоичной и любой другой (в
частности, десятичной) формой представления числа.
3) Возможно представление как в форме с фиксированной, так и в форме с
плавающей запятой.
4) Имеются алгоритмы преобразования чисел между системами счисления при
различных формах их представления.
Так как ЭВМ работает с цифровой (дискретной) информацией, то она
(информация) представлена в виде последовательности нулей и единиц – так
называемый двоичный код информации (англ. binary digit, сокращённо bit).
Бит – это наименьшая единица информации, которая выражает логическое
значение «Да» или «Нет» и обозначается двоичными числами 0 и 1.
Важной специфической особенностью представления чисел в регистрах и в
памяти компьютера является то, что, компьютерные ячейки имеют ограниченный
размер и, следовательно, вынуждают использовать при записи чисел и действиях
с ними конечное количество разрядов. Это приводит к тому, что бесконечные
множества чисел заменяются конечным множеством их представлений, которые
называются кодами чисел, а арифметические операции с числами заменяются
операциями с кодами. Способы кодирования оказываются различными для
следующих числовых множеств:
целые положительные числа (целые числа без знака);
целые числа со знаком;
вещественные нормализованные числа.
Рассмотрим каждую из предложенных групп отдельно.
§ 4.3. Кодирование в компьютере целых чисел без знака
Для записи числа в ЭВМ выделяется фиксированное количество двоичных
разрядов. Память ЭВМ имеет байтовую структуру, однако размер одной
29

Таблица кодов ASCII
12
max
2
k
z
0 1 2 3 4 5 6 7 8 9 A B C D E F 0 ► 0 @ P ‘ p А Р а ░ └ ╨ р Ё 1 ☺ ◄ ! 1 A Q a q Б С б ▒ ┴ ╤ с ё 2 ☻ ↕ “ 2 B R b r В Т в ▓ ┬ ╥ т
Є
3 ♥ !! # 3 C S c s Г У г │ ├ ╙ у ϵ
4 ♦ ¶ $ 4 D T d t Д Ф д ┤ ─ ╘ ф Ȉ 5 ♣ § % 5 E U e u Е Х е ╡ ┼ ╒ х ї 6 ♠ ▬ & 6 F V f v Ж Ц ж ╢ ╞ ╓ ц Ŷ
7 • ↕ ’ 7 G W g w З Ч з ╖ ╟ ╫ ч ŷ
8
◘ ( 8 H X h x И Ш и ╕ ╚ ╪ ш ○ 9
○ ) 9 I Y i y Й Щ й ╣ ╔ ┘ щ ● A
◙ * : J Z j z К Ъ к ║ ╩ ┌ ъ
·
B
♂ + ; K [ k { Л Ы л ╗ ╦ █ ы
√
C ♀ └ , < L \ l ¦ М Ь м ╝ ╠ ▄ ь № D ♪ - = M ] m } Н Э н ╜ ═ ▌ э ¤ E ♫ ▲ . > N ^ n ~ О Ю о ╛ ╬ ▐ ю ▪ F ☼ ▼ / ? O _ o ⌂ П Я п ┐ ╧ ▀ я
адресуемой ячейки обычно составляет несколько байт. Например, в IBM – 2 байта
(16 бит), обрабатываемые совместно, образуют машинное слово. При
формировании результата операции используется ещё один (17-ый) регистр –
регистр переноса (переполнения). Так как разрядная сетка конечна, существует
максимальное число в машинном коде. Пусть k – количество разрядов и p = 2
(двоичная система счисления). Тогда
.
Прямой код:
Для кодирования в компьютере целых чисел без знака используется прямой
код. В повседневной практике мы оперируем числами и записываем их всегда в
прямом коде. При представлении чисел в памяти компьютера под их код может
отводиться 8 бит, 16 бит и т.д. При этом изменяется и диапазон значений. Так,
например, в PASCAL для целых чисел без знака (тип Word) отводится 2 байта,
значит числа типа Word лежат в диапазоне от 0 до 65 535 ( ). Поэтому при
кодировании-декодировании целых чисел без знака необходимо указывать,
сколько бит отводится под их 2-ый код.
Алгоритм нахождения прямого кода числа – прост:
─ перевести число в 2-ую С.С.;
─ дополнить недостающие разряды нулями.
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
