1 - Наукоград

advertisement
Всероссийский фестиваль передового педагогического опыта
"Современные методы и приемы обучения"
ПРЕДСТАВЛЕНИЕ
ВЕЩЕСТВЕННЫХ ЧИСЕЛ В
ПАМЯТИ КОМПЬЮТЕРА
Тарасова Ольга Константиновна
учитель информатики
муниципальное бюджетное
образовательное учреждение
гимназия №17
город Пермь Пермский край
Электронное периодическое издание НАУКОГРАД
Незнание рождает опасение,
опасение – страх,
а страх – агрессию...
Знать, как он работает, не менее важно, чем уметь
работать с ПК.
Вы можете вполне успешно пользоваться услугами
компьютера, не понимая того, что в нем происходит.
Однако чем глубже вы представляете процессы,
происходящие в ПК, тем лучше будете использовать
его возможности...
Если что-нибудь случится в процессе работы с
компьютером, вероятность того, что вы примите
правильное решение, а не наделаете глупостей и не
испортите все окончательно, будет выше.
Питер Нортон
тип
название
размер
ячейки
диапазон
значений
real
вещественный
6 байт
2.9е-39..1.7е+38
4 байта
1.4е-45..3.4е+38
8 байт
5.0е-324..1.7е+308
single
double
одинарной
точности
двойной
точности
Вещественные числа хранятся в памяти
компьютера в нормализованном виде.
2
2556.2510=
0.00034510=
0.255625*10^4
0.345*10^-3
856.7510=
1001.1012=
0.000101012=
11011.12=
delete
Изменим определение
нормализованного вида числа:
2
2
2
1001.1012= 0.1001101*10^4
0.000101012= 0.10101*10^-11
11011.12= 0.110111*10^101
1001.1012= 1.001101*10^11
0.000101012= 1.0101*10^-100
11011.12=
1.10111*10^100
delete
тип REAL
под значение типа REAL в памяти выделяется 6 байтов
…
знаковый
мантисса (39 бит)
разряд:
0 – число>0
1 – число<0
модифицированный
порядок =
порядок +
модифицированное
число (129)
диапазон порядка 0..255
с учетом м.ч.:
-129..126
-128
порядок 00000000
выделен под хранение 0
155,62510 = 10011011,1012 =
= 1,00110111012∙
модифицированный порядок = 7 + 129 = 136 =
= 10001000
0
0
0
1
1
0
1
1
1
мантисса
0
1
0
…
1
0
0
0
1
0
0
0
модифицированный
порядок
max+
0
1
1
1
1
1
1
1
1
1
1
1
…
1
1
1
1
1
1
1
1
модифицированный
порядок
мантисса
=1.111…12∙102255-129 =2∙2126=2127≈1.7∙1038
min+
0
0
0
0
0
0
0
0
0
мантисса
0
0
0
…
0
0
0
0
0
0
0
1
модифицированный
порядок
=1.000…02∙1021-129 =2-128≈2.9∙10-39
Эксперимент в ТурбоПаскале:
программа:
var P:real; i:integer;
begin
P:=1;
for i:=1 to 127 do
P:=P*2;
writeln(P);
end.
программа:
var P:real; i:integer;
begin
P:=1;
for i:=1 to 128 do
P:=P*1/2;
writeln(P);
end.
результат:
результат:
Runtime error 205 at 0BEE:0044.
2.9387358771E-39
программа:
программа:
var P:real;
begin
P:=1.7е38;
writeln(P);
end.
результат:
1.7000000000E+38
var P:real;
begin
P:=2.938735877E-39;
writeln(P);
end.
результат:
0.0000000000E+00
Диапазон типа Real:
переполнение
-1.7e38
машинные нули
-2.9e-39 0 2.9e-39
переполнение
1.7e38
Любое ли число из диапазона
можно представить в памяти
компьютера?
var a,b:real; ok:boolean;
begin
a:=<выражение>;
b:=<выражение>;
ok:=а=b;
...
end.
│a-b│<ε
тип SINGLE
под значение типа single в памяти выделяется 4 байта
…
знаковый модифицированный
разряд порядок
модифицированное
число = 127
мантисса
максимальный порядок Pmax
минимальный порядок Pmin
127
-126
максимальное положительное число
3.4е38
минимальное положительное число
1.4е-45
-1.4е-45
числа
нормализованные
-3.4е38
- 1.18е-38
1.4е-45
числа
нормализованные
1.18е-38
числа
денормализованные
3.4е38
Download