Справочник по специальным функциям - Абрамович М.
Скачать (прямая ссылка):
откуда X = (0.2656 0507 ...)(fi). Поэтому, переводя х в двоичную систему, имеем
X = <0.010110101 110000101 OOOlU ...)(s|.
Для того чтобы обратный перевод х из двоичной в десятичную систему давал .v снова с заданным числом п десятичных знаков, нужно иметь X в двоичной системе по крайней мере с H знаками, где н выбирается таким, чтобы
2" ¦ 10". В качестве рабочего правила можно взятья^ — л.
3
Следовательно, чтобы МОЖНО было ПОЛУЧИТЬ X — (0.355)(,0) обратным переводом, х должно содержать в двоичной
системе л 8= — • 3 = 10 знаков. Таким образом, 3
X = (О.ОШ ПО 110 Ofo).
Для того чтобы совершить обратный перевод, перейдем в восьмеричную систему, где
X = (0.266)(8),
и затем применим метод (IV) cb = S1 используя десятичную арифметику:
х-, = — + 6 = 6.75, 8
1-І = + 2 = 2.84375,
2.84375
¦ 0.355 46875.
Можно также применить метод (III) с b - (IOlO)f3), исполь зуя двоичную арифметику:
(0.010 11011) ¦ 1010 - 11 + (0.100 011 1),
(0.1000111) -1010 = 101 +(0.100 011),
(0.100 0П) -1010-101 j-(о.ои и),
(0.011 11) • 1010 = 100 + (0.1011).примеры
803
поэтому
Переводя целые части в десятичную систему, находим ії-і - (lib) = 3, a-a = 5-8 = (101)(а) = 5, fl-4 = (ІОПйї = 4, * - 0.(3554)(10).
Заметим, что дробная часть представляет собой на каждом шаге непереводимый остаток. Поэтому для того, чтобы округлять на каждом шаге, необходимо только установить, больше или меньше непереводимая отбрасываемая часп>, чем 1/2, т.е. п двоичном системе определить, раина перлая отбрасываемая цифра 1 или 0.
Пример 4. Перенести a ==(3.141593)(10) • 10"9в двоичную систему.
Искомое представление имеет вид
X = (I. в-ів-в 2-к,
где и и к таковы, что обраіньш переход из двоичной системы и десятичную дает л стон же точностью в 15 десятичных знаков. Соїласно правилу. установленному в примере
з, п и к должны быть выбраны такими, чюбы it +
-Yk . 15 = 50. 3
По табл. 28.1 находим
2-а» < (3.141593)(10)- Ю-® <
Таким образом, нужно взять к — 29 и, следовательно, выбрать її > 21. Поэтому перевод на настольной счетной машине происходит следующим образом. Сначала, используя табл. 28.1, находим
220 X = (1.686 629 899)(10).
Затем для удобства переводим это число в восьмеричную систему, используя метол примера 3 И округляя по крайней мере до 7 восьмеричных (21 двоичных) знаков. Находим
2аэл - (1.537 4337)(g>.
Поэтому
X = (1.537 433 7)(а)-2-2в
и, следовательно,
X = (1.101 011 111 100011 Oil 111)(2)-2"29.
Для того чтобы перевести X обратно в десятичную систему, нужно только вз я j ь из табл. 28.1 различные степени 2, которые содержатся в вышеприведенном представлении, и просуммировать их. Ода а ко, так как 2 т — 2~"'"и — 2~т
для любой действительной переменной т, то более удобно привести сначала представление л к форме
X = 2~"
. 2-31 - 2-3=1 -
9 2г*г_2-45 _2—50
и затем просуммировать эти степени 2. (Заметим, что число слагаемых уменьшается, таким образом, с 16 до 7.) Из табл. 2?.! находим
+ 2-28 = +3.725 290 298- 10~B
-2-81 = -0.465 661 287- IO-9
-2-33 = -0.116 415 322- ІО"9
_2-*9 = -0.001 818 989- IO"0
+ 2-42 = +0.000 227 374- IO"9
-2"45 = -0,00 0 0 2 8 4 2 2- IO*9
-2-5"= -0.000 000 888- 10~8
* = 3.141 592 764- 10_в
= к = к '0>
Для обеспечения достаточной точное їй у 1Iи і ыпаютсл девять десятичных знаков. Округляя до семи значащих цифр, имеем
X = (3.141593),10)- 10-*.
Для того чтобы перевести в двоичную систему такое число, как .V = (H)(Ul)-IOi, где к — положительное целое число, настолько большое, что табл. 28.1 не может быть использована, применим следующий метод. Вычислим
Iog3X- ~gX- = k-V . Ig 2 Ig 2
где к — частное, а л, — остат ок, причем де.ченпс производит ся в десятичной сисісмс. JaiCM находим г) = = ІОлгь т.е. Xi = Ig т], так что
Iog3X =
Ig 2
следовательно,
V =- (Tj)(ID)' 2*.
Теперь переводим (VjVllli а двоичную систему любым из методов, описанных выше.
Аналогичный метод может быть использован при переводе » десятичную систему двоичного числа, которое лежит вне области табулирования табл. 28.1.
Пример 5. TIepeueciH X - (2.773)<10) • 1С33 в двоичную систему.
Вычислим сначала, используя 4.1.19:
. Igx 83.44295 „„_ 0.05764
Iog2 X=--=-------= 27/ Ь-----
Ig 2 0.30103 0.30103
и найдем
0.05764 = Ig 1.1419.
Следовательно,
Ie I 1419
Iog2 л = 277 + ~ 277 + Ioga 1.1419
Ig 2
X - (1.1419)ао> ¦ 2ат7. Теперь приметам методы примера 3 для того, чтобы получить (1.14l9j(,o) =(1.110516),Я), где для удобсівц используются восьмеричные обозначения.
Теперь нужно определить, сколько знаков следует оставить в полученном числе, чтобы при обратном переводе сохранились все десятичные знаки х. Заметим, что послед-нин ненулевой десятичный 'їнак числа * есть 3 -IO80. По табл. 28.4 определяем, чго 2'"й < IOw < 2МЙ. Следовательно, в двоичной системе X должно быть диоичным целым числом, умноженным на 2JW\ т.е. (L1J0 516\8) должно быть округлено до 4 восьмеричных (12 двоичных) знаков. В кзчестве окончательного результата получаем * - (1.1105),,,-2=" = (1 1105),,)-2=" =