Всероссийский фестиваль передового педагогического опыта "Современные методы и приемы обучения" ПРЕДСТАВЛЕНИЕ ВЕЩЕСТВЕННЫХ ЧИСЕЛ В ПАМЯТИ КОМПЬЮТЕРА Тарасова Ольга Константиновна учитель информатики муниципальное бюджетное образовательное учреждение гимназия №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