Интерактивный тренажер на левый сдвиг в двоичном коде

   
 

карта : главная : гостевая

Интерактивный тренажер B1-LSV с подробным разбором решения задач на левый сдвиг в двоичном коде и вычитание вопроса В1 ЕГЭ 2013




Тренажер B1-LSV генерирует задачи и демонстрирует с подробным разбором решения задач на левый сдвиг в двоичном коде и вычитание вопроса В1 ЕГЭ 2013

http://domprim.ru/

 

Пример задания №1:

У исполнителя, который работает с положительными однобайтовыми двоичными числами, две команды, которым присвоены номера:

1) сдвинь влево
2) вычти 10

Выполняя первую из них, исполнитель сдвигает число на один двоичный разряд влево, а выполняя вторую, вычитает из него 10.
Исполнитель начал вычисления с десятичного числа 58 и выполнил цепочку команд 21221.
Запишите результат работы этого алгоритма в системе счисления с основанием 6.

Решение:

В этой задаче важно разобраться, что такое «сдвиг влево»; так называется операция, при которой все биты байта сдвигаются на 1 бит влево. Нужно запомнить, что при левом сдвиге в младший бит записывается нуль, а старший бит попадает в специальную ячейку – бит переноса, то есть теряется!

Переводим десятичное число 58 любым известным способом в двоичный код и получаем: 111010
Работаем с байтом, т.е. должно быть 8 бит, поэтому дописываем слева 00 и получаем - 00111010

Не забудем обработать вторую команду:
2) вычти 10
для чего переведем число 10 в двоичную систему счисления и получим: 1010

Начинаем выполнять заданную цепочку команд: 21221

шаг №1 выполняем команду 2) - т.е. вычитаем из двоичного кода 1010 и получаем новый код - 00110000
шаг №2 выполняем команду 1) - т.е. сдвигаем биты влево - 01100000
шаг №3 выполняем команду 2) - т.е. вычитаем из двоичного кода 1010 и получаем новый код - 01010110
шаг №4 выполняем команду 2) - т.е. вычитаем из двоичного кода 1010 и получаем новый код - 01001100
шаг №5 выполняем команду 1) - т.е. сдвигаем биты влево - 10011000

Переводим двоичный код: 10011000 в десятичную систему счисления 1*2^7 + 1*2^4 + 1*2^3 = 152
полученное десятичное число 152 переводим в систему счисления по основанию 6 простым делением на 6

Таким образом, правильный ответ: 412


Пример задания №2:

У исполнителя, который работает с положительными однобайтовыми двоичными числами, две команды, которым присвоены номера:

1) сдвинь влево
2) вычти 4

Выполняя первую из них, исполнитель сдвигает число на один двоичный разряд влево, а выполняя вторую, вычитает из него 4.
Исполнитель начал вычисления с десятичного числа 55 и выполнил цепочку команд 22112.
Запишите результат работы этого алгоритма в системе счисления с основанием 13.

Решение:

В этой задаче важно разобраться, что такое «сдвиг влево»; так называется операция, при которой все биты байта сдвигаются на 1 бит влево. Нужно запомнить, что при левом сдвиге в младший бит записывается нуль, а старший бит попадает в специальную ячейку – бит переноса, то есть теряется!

Переводим десятичное число 55 любым известным способом в двоичный код и получаем: 110111
Работаем с байтом, т.е. должно быть 8 бит, поэтому дописываем слева 00 и получаем - 00110111

Не забудем обработать вторую команду:
2) вычти 4
для чего переведем число 4 в двоичную систему счисления и получим: 100

Начинаем выполнять заданную цепочку команд: 22112

шаг №1 выполняем команду 2) - т.е. вычитаем из двоичного кода 100 и получаем новый код - 00110011
шаг №2 выполняем команду 2) - т.е. вычитаем из двоичного кода 100 и получаем новый код - 00101111
шаг №3 выполняем команду 1) - т.е. сдвигаем биты влево - 01011110
шаг №4 выполняем команду 1) - т.е. сдвигаем биты влево - 10111100
шаг №5 выполняем команду 2) - т.е. вычитаем из двоичного кода 100 и получаем новый код - 10111000

Переводим двоичный код: 10111000 в десятичную систему счисления 1*2^7 + 1*2^5 + 1*2^4 + 1*2^3 = 184
полученное десятичное число 184 переводим в систему счисления по основанию 13 простым делением на 13

Таким образом, правильный ответ: 112


Пример задания №3:

У исполнителя, который работает с положительными однобайтовыми двоичными числами, две команды, которым присвоены номера:

1) сдвинь влево
2) вычти 9

Выполняя первую из них, исполнитель сдвигает число на один двоичный разряд влево, а выполняя вторую, вычитает из него 9.
Исполнитель начал вычисления с десятичного числа 47 и выполнил цепочку команд 11121.
Запишите результат работы этого алгоритма в системе счисления с основанием 16.

Решение:

В этой задаче важно разобраться, что такое «сдвиг влево»; так называется операция, при которой все биты байта сдвигаются на 1 бит влево. Нужно запомнить, что при левом сдвиге в младший бит записывается нуль, а старший бит попадает в специальную ячейку – бит переноса, то есть теряется!

Переводим десятичное число 47 любым известным способом в двоичный код и получаем: 101111
Работаем с байтом, т.е. должно быть 8 бит, поэтому дописываем слева 00 и получаем - 00101111

Не забудем обработать вторую команду:
2) вычти 9
для чего переведем число 9 в двоичную систему счисления и получим: 1001

Начинаем выполнять заданную цепочку команд: 11121

шаг №1 выполняем команду 1) - т.е. сдвигаем биты влево - 01011110
шаг №2 выполняем команду 1) - т.е. сдвигаем биты влево - 10111100
шаг №3 выполняем команду 1) - т.е. сдвигаем биты влево - 01111000
шаг №4 выполняем команду 2) - т.е. вычитаем из двоичного кода 1001 и получаем новый код - 01101111
шаг №5 выполняем команду 1) - т.е. сдвигаем биты влево - 11011110

Переводим двоичный код: 11011110 в систему счисления с основанием 16 с помощью тетрад (4)

Таким образом, правильный ответ: DE


Пример задания №4:

У исполнителя, который работает с положительными однобайтовыми двоичными числами, две команды, которым присвоены номера:

1) сдвинь влево
2) вычти 9

Выполняя первую из них, исполнитель сдвигает число на один двоичный разряд влево, а выполняя вторую, вычитает из него 9.
Исполнитель начал вычисления с десятичного числа 61 и выполнил цепочку команд 11221.
Запишите результат работы этого алгоритма в системе счисления с основанием 16.

Решение:

В этой задаче важно разобраться, что такое «сдвиг влево»; так называется операция, при которой все биты байта сдвигаются на 1 бит влево. Нужно запомнить, что при левом сдвиге в младший бит записывается нуль, а старший бит попадает в специальную ячейку – бит переноса, то есть теряется!

Переводим десятичное число 61 любым известным способом в двоичный код и получаем: 111101
Работаем с байтом, т.е. должно быть 8 бит, поэтому дописываем слева 00 и получаем - 00111101

Не забудем обработать вторую команду:
2) вычти 9
для чего переведем число 9 в двоичную систему счисления и получим: 1001

Начинаем выполнять заданную цепочку команд: 11221

шаг №1 выполняем команду 1) - т.е. сдвигаем биты влево - 01111010
шаг №2 выполняем команду 1) - т.е. сдвигаем биты влево - 11110100
шаг №3 выполняем команду 2) - т.е. вычитаем из двоичного кода 11101011 - 1001 и получаем новый код - 11101011
шаг №4 выполняем команду 2) - т.е. вычитаем из двоичного кода 11100010 - 1001 и получаем новый код - 11100010
шаг №5 выполняем команду 1) - т.е. сдвигаем биты влево - 11000100

Переводим двоичный код: 11000100 в систему счисления с основанием 16 с помощью тетрад (4)

Таким образом, правильный ответ: C4




Пример задания №5:

У исполнителя, который работает с положительными однобайтовыми двоичными числами, две команды, которым присвоены номера:

1) сдвинь влево
2) вычти 9

Выполняя первую из них, исполнитель сдвигает число на один двоичный разряд влево, а выполняя вторую, вычитает из него 9.
Исполнитель начал вычисления с десятичного числа 48 и выполнил цепочку команд 21211.
Запишите результат работы этого алгоритма в системе счисления с основанием 11.

Решение:

В этой задаче важно разобраться, что такое «сдвиг влево»; так называется операция, при которой все биты байта сдвигаются на 1 бит влево. Нужно запомнить, что при левом сдвиге в младший бит записывается нуль, а старший бит попадает в специальную ячейку – бит переноса, то есть теряется!

Переводим десятичное число 48 любым известным способом в двоичный код и получаем: 110000
Работаем с байтом, т.е. должно быть 8 бит, поэтому дописываем слева 00 и получаем - 00110000

Не забудем обработать вторую команду:
2) вычти 9
для чего переведем число 9 в двоичную систему счисления и получим: 1001

Начинаем выполнять заданную цепочку команд: 21211

шаг №1 выполняем команду 2) - т.е. вычитаем из двоичного кода 00100111 - 1001 и получаем новый код - 00100111
шаг №2 выполняем команду 1) - т.е. сдвигаем биты влево - 01001110
шаг №3 выполняем команду 2) - т.е. вычитаем из двоичного кода 01000101 - 1001 и получаем новый код - 01000101
шаг №4 выполняем команду 1) - т.е. сдвигаем биты влево - 10001010
шаг №5 выполняем команду 1) - т.е. сдвигаем биты влево - 00010100

Переводим двоичный код: 00010100 в десятичную систему счисления 1*2^4 + 1*2^2 = 20
полученное десятичное число 20 переводим в систему счисления по основанию 11 простым делением на 11

Таким образом, правильный ответ: 19


Данный ролик можно вставить бесплатно на страницу любого сайта с любым сценарием урока или с иным образовательным контентом, для этого достаточно вставить код, приведенный ниже, в нужное место вашей веб-страницы

Анимация остается работоспособной и при более коротком написании кода!

карта : главная : гостевая

 
© Александр Козлов, 2013
671717 г.Северобайкальск
 
Рейтинг@Mail.ru