Схема Горнера. Действия над числами в различных системах счисления

Повторение

  1. Дайте определения позиционной и непозиционной систем счисления. Приведите примеры.
  2. Какая запись числа называется развернутой? Приведите примеры.
  3. Дайте определение алфавита, основания, базиса системы счисления. Приведите примеры.
  4. Как перевести число в десятичную систему счисления?
  5. Как перевести целое число из десятичной системы счисления?
  6. Как перевести правильную дробь и смешанное число из десятичной системы счисления?
  7. Какое минимальное основание должна иметь система счисления, если в ней могут быть записаны числа:
    1. 10, 21, 201, 1201;
    2. 403, 561, 666, 125;
    3. 22, 984, 1010, А219?
  8. В каких системах счисления 10 – число нечетное?

Перевод чисел в десятичную систему счисления по схеме Горнера

    Рассмотрим развернутую запись числа в троичной системе счисления: 120123=1*34+2*33+0*32+1*31+2*30. В первых четырех слагаемых имеется общий множитель 3, который можно вынести за скобки. Получим:
    1*34+2*33+0*32+1*31+2*30=(1*33+2*32+0*32+1)*3+2. Теперь этот же множитель можно вынести из первых трех слагаемых:
    1*34+2*33+0*32+1*31+2*30=(1*33+2*32+0*31+1)*3+2=((1*32+2*31+0)*3+1)*3+2. И, наконец:
    1*34+2*33+0*32+1*31+2*30=(1*33+2*32+0*31+1)*3+2=((1*32+2*31+0)*3+1)*3+2=(((1*3+2)*3+0)*3+1)*3+2.
    На основе этой схемы можно вывести следующий алгоритм для перевода целых чисел в десятичную систему счисления:
    Старшую цифру умножаем на основание, добавляем вторую цифру, результат умножаем на основание, добавляем третью цифру и так до тех пор, пока не прибавим последнюю цифру.
    Результатом будет десятичная запись числа. Ясно, что полученное равенство будет справедливо для любых целых P-ичных чисел, а формулу можно записать в общем виде:

anan-1an-2...a1a0p=(...(an*p+an-1)*p+an-2)*p+...)+a1)*p+a0.

    Эта формула и является иллюстрацией схемы Горнера для пероевода целых чисел в десятичную систему счисления.
    Механизм вычислений можно представить так ( на рассмотренном выше примере):
    1    2    0     1      2 (выписываем цифры числа в заданной системе счисления).
   1  5  15  46  140 (результат, полученный при умножении на основание и добавлении очередной цифры, записываем под соответствующей цифрой). Последнее число и будет ответом.

Действия над числами в различных системах счисления

    Действия над числами в различных системах счисления производятся на основе таблиц сложения и умножения в этих системах счисления. Самые простые таблицы сложения и умножения, конечно же, в двоичной системе счисления:    

1+0=1 1*0=0
1+1=10 1*1=1

    Немногим длиннее оказываются таблицы сложения и умножения в троичной системе счисления. Пропустим в них строки сложения с нулем и умножения на нуль:

Таблица сложения Таблица умножения
1+1=2 1*1=1
1+2=10 2+2=11 1*2=2 2*2=11

    Более привычный для нас вид имеют таблицы сложения и умножения в восьмеричной системе счисления:

Таблица сложения
1+1=2
1+2=32+2=4
1+3=42+3=53+3=6
1+4=52+4=63+4=74+4=10
1+5=62+5=73+5=104+5=115+5=12
1+6=72+6=103+6=114+6=125+6=136+6=14
1+7=102+7=113+7=124+7=135+7=146+7=157+7=16

Таблица умножения
1*1=2
1*2=22*2=4
1*3=32*3=63*3=11
1*4=42*4=103*4=144*4=20
1*5=52*5=123*5=174*5=245*5=31
1*6=62*6=143*6=224*6=305*6=366*6=44
1*7=72*7=163*7=254*7=345*7=436*7=527*7=61

    А теперь представьте, что в первом классе вам нужно было бы выучить наизусть таблицы сложения и умножения в шестнадцатеричной системе счисления! Сколько бы времени вы на это затратили?

Таблица сложения
1+1=2
1+2=32+2=4
1+3=42+3=53+3=6
1+4=52+4=63+4=74+4=8
1+5=62+5=73+5=84+5=95+5=A
1+6=72+6=83+6=94+6=A5+6=B6+6=C
1+7=82+7=93+7=A4+7=B5+7=C6+7=D7+7=E
1+8=92+8=A3+8=B4+8=C5+8=D6+8=E7+8=F8+8=10
1+9=A2+9=B3+9=C4+9=D5+9=E6+9=F7+9=108+9=119+9=12
1+A=B2+A=C3+A=D4+A=E5+A=F6+A=107+A=118+A=129+A=13A+A=14
1+B=C2+B=D3+B=E4+B=F5+B=106+B=117+B=128+B=139+B=14A+B=15B+B=16
1+C=D2+C=E3+C=F4+C=105+C=116+C=127+C=138+C=149+C=15A+C=16B+C=17C+C=18
1+D=E2+D=F3+D=104+D=115+D=126+D=137+D=148+D=159+D=16A+D=17B+D=18C+D=19D+D=1A
1+E=F2+E=103+E=114+E=125+E=136+E=147+E=158+E=169+E=17A+E=18B+E=19C+E=1AD+E=1BE+E=1C
1+F=102+F=113+F=124+F=135+F=146+F=157+F=168+F=179+F=18A+F=19B+F=1AC+F=1BD+F=1CE+F=1DF+F=1E

Таблица умножения
1*1=1
1*2=22*2=4
1*3=32*3=63*3=9
1*4=42*4=83*4=C4*4=10
1*5=52*5=A3*5=F4*5=145*5=19
1*6=62*6=C3*6=124*6=185*6=1E6*6=24
1*7=72*7=E3*7=154*7=1C5*7=236*7=2A7*7=31
1*8=82*8=103*8=184*8=205*8=286*8=307*8=388*8=40
1*9=92*9=123*9=1B4*9=245*9=2D6*9=367*9=3F8*9=489*9=51
1*A=A2*A=143*A=1E4*A=285*A=326*A=3C7*A=468*A=509*A=5AA*A=64
1*B=B2*B=163*B=214*B=2C5*B=376*B=427*B=4D8*B=589*B=63A*B=6EB*B=79
1*C=C2*C=183*C=244*C=305*C=3C6*C=487*C=548*C=609*C=6CA*C=78B*C=84C*C=90
1*D=D2*D=1A3*D=274*D=345*D=416*D=4E7*D=5B8*D=689*D=75A*D=82B*D=8FC*D=9CD*D=A9
1*E=E2*E=1C3*E=2A4*E=385*E=466*E=547*E=628*E=709*E=7EA*E=8CB*E=9AC*E=A8D*E=B6E*E=C4
1*F=F2*F=1E3*F=2D4*F=3C5*F=4B6*F=5A7*F=698*F=789*F=87A*F=96B*F=A5C*F=B4D*F=C3E*F=D2F*F=E1

    Пользуясь таблицами, выполним: 318+528 и 318*528 . Применим обычное сложение и умножение "столбиком": . Произведем проверку, переведя слагаемые (множители) и результаты в десятичную систему счисления по схеме Горнера:
   3    1       5   2        1   0   3          2   0     3       2
   3   25      5   42       1   8   67        2   16   131   1050
    Сложив в десятичной системе счисления числа 25 и 42, получим 67, а перемножив эти же числа, получим 1050, значит, действия выполнены правильно.

Задачи
К оглавлению

Hosted by uCoz