
- •1. Преобразование систем счисления чисел в двоичную систему счисления.
- •2. Преобразование результата в различные системы счисления.
- •3. Выделение старшего и младшего байта результата и представление их в различных системах счисления.
- •Задание №2. Выполнение логических операций. Наложение масок.
- •Результат вычислений представить в следующих системах счисления: двоичная, восьмеричная, шестнадцатеричная и десятичная.
- •1. Произведем преобразование систем счисления чисел в двоичную систему счисления.
- •2. Преобразование результата в различные системы счисления.
- •3. Формирование устанавливающей маски.
- •4. Формирование сбрасывающей маски.
- •5. Формирование инвертирущей маски.
- •Задание №3. Программирование микроконтроллеров. Работа с массивами.
- •Inc r0 ; увеличиваем указатель ячейки памяти на 1
- •Inc r0 ; увеличиваем указатель ячейки памяти
- •Inc r1 ; увеличиваем указатель ячейки памяти
- •Inc b ; учитываем перенос в старшем байте суммы
- •Inc r0 ; увеличиваем указатель ячейки памяти
Задание №2. Выполнение логических операций. Наложение масок.
Задано логическое выражение. Числа имеют различную систему счисления. Размер чисел слово (два байта).
Требуется выполнить вычисление заданного логического выражения. Все вычисления произвести в двоичной системе исчисления, т. е. все числа необходимо перевести в двоичную систему счисления, а затем произвести логические действия. Варианты заданий приведены в таблице 2.1. Значения для N1, N2, N3 выбираются из таблицы 1.1 в соответствии с вариантом.
Результат вычислений представить в следующих системах счисления: двоичная, восьмеричная, шестнадцатеричная и десятичная.
Сформировать устанавливающую маску в соответствии с номерами битов, приведенных в таблице 2.2. Записать устанавливающую маску в восьмеричной и шестнадцатеричной системах счисления. Произвести наложение устанавливающей маски на результат, полученный в п. 1 задания №2. Результат наложения маски записать в восьмеричной и шестнадцатеричной системах счисления.
Сформировать сбрасывающую маску в соответствии с номерами битов, приведенных в таблице 2.2. Записать сбрасывающую маску в восьмеричной и шестнадцатеричной системах счисления. Произвести наложение сбрасывающей маски на результат, полученный в п. 1 задания №2. Результат наложения маски записать в восьмеричной и шестнадцатеричной системах счисления.
Сформировать инвертирующую маску в соответствии с номерами битов, приведенных в таблице 2.2. Записать инвертирующую маску в восьмеричной и шестнадцатеричной системах счисления. Произвести наложение инвертирующей маски на результат, полученный в п. 1 задания №2. Результат наложения маски записать в восьмеричной и шестнадцатеричной системах счисления.
При оформлении результатов вычислений необходимо подробное описание выполняемых действий.
Варианты для задания №2
Формат задания
N1 O1 N2 O2 N3 O3 N4,
где
N1, N2, N3, N4 – числа, вариант выбирается из таблицы 1.2;
O1, O2, O3 – логический оператор.
Таблица 2.1. Варианты заданий для п.1
Номер варианта |
Вариант для N1 |
Вариант для O1 |
Вариант для N2 |
Вариант для O2 |
Вариант для N3 |
Вариант для O3 |
Вариант для N4 |
1 |
5 |
XOR |
1 |
AND |
2 |
OR |
3 |
2 |
6 |
AND |
2 |
OR |
3 |
XOR |
4 |
3 |
1 |
OR |
3 |
XOR |
4 |
AND |
5 |
4 |
2 |
XOR |
4 |
AND |
5 |
OR |
6 |
5 |
3 |
AND |
5 |
OR |
6 |
XOR |
1 |
6 |
4 |
OR |
6 |
XOR |
1 |
AND |
2 |
7 |
5 |
XOR |
1 |
AND |
2 |
OR |
3 |
8 |
6 |
AND |
2 |
OR |
3 |
XOR |
4 |
9 |
1 |
OR |
3 |
XOR |
4 |
AND |
5 |
10 |
2 |
XOR |
4 |
AND |
5 |
OR |
6 |
11 |
3 |
AND |
5 |
OR |
6 |
XOR |
1 |
12 |
4 |
OR |
6 |
XOR |
1 |
AND |
2 |
13 |
5 |
XOR |
1 |
AND |
2 |
OR |
3 |
14 |
6 |
AND |
2 |
OR |
3 |
XOR |
4 |
15 |
1 |
OR |
3 |
XOR |
4 |
AND |
5 |
16 |
2 |
XOR |
4 |
AND |
5 |
OR |
6 |
17 |
3 |
AND |
5 |
OR |
6 |
XOR |
1 |
18 |
4 |
OR |
6 |
XOR |
1 |
AND |
2 |
19 |
5 |
XOR |
1 |
AND |
2 |
OR |
3 |
20 |
6 |
AND |
2 |
OR |
3 |
XOR |
4 |
Пример формирования задания.
Для варианта номер 5 задание имеет следующий вид:
1010001110001101(2) AND 1005(16) OR 7321(8) XOR 0000000101100010(2)
Таблица 2.2. Варианты заданий для п.3
Номер варианта |
Номера битов сбрасывающей маски |
Номера битов устанавливающей маски |
Номера битов инвертирующей маски |
1 |
0, 2, 8, 10, 11, 14 |
2, 5, 9, 10, 14, 15 |
1, 3, 6, 8, 13, 14 |
2 |
1, 3, 9, 11, 12, 15 |
0, 3, 6, 10, 11, 15 |
2, 4, 7, 9, 14, 15 |
3 |
0, 2, 4, 10, 12, 13 |
0, 1, 4, 7, 11, 12 |
0, 3, 5, 8, 10, 15 |
4 |
1, 3, 5, 11, 13, 14 |
1, 2, 5, 8, 12, 13 |
0, 1, 4, 6, 9, 11 |
5 |
2, 4, 6, 12, 14, 15 |
2, 3, 6, 9, 13, 14 |
1, 2, 5, 7, 10, 12 |
6 |
0, 3, 5, 7, 13, 15 |
3, 4, 7, 10, 14, 15 |
2, 3, 6, 8, 11, 13 |
7 |
0, 1, 4, 6, 8, 14 |
0, 4, 5, 8, 11, 15 |
3, 4, 7, 9, 12, 14 |
8 |
1, 2, 5, 7, 9, 15 |
0, 1, 5, 6, 9, 12 |
4, 5, 8, 10, 13, 15 |
9 |
0, 2, 3, 6, 8, 10 |
1, 2, 6, 7, 10, 13 |
0, 5, 6, 9, 11, 14 |
10 |
1, 3, 4, 7, 9, 11 |
2, 3, 7, 8, 11, 14 |
1, 6, 7, 10, 12, 15 |
11 |
0, 2, 8, 10, 11, 14 |
2, 5, 9, 10, 14, 15 |
1, 3, 6, 8, 13, 14 |
12 |
1, 3, 9, 11, 12, 15 |
0, 3, 6, 10, 11, 15 |
2, 4, 7, 9, 14, 15 |
13 |
0, 2, 4, 10, 12, 13 |
0, 1, 4, 7, 11, 12 |
0, 3, 5, 8, 10, 15 |
14 |
1, 3, 5, 11, 13, 14 |
1, 2, 5, 8, 12, 13 |
0, 1, 4, 6, 9, 11 |
15 |
2, 4, 6, 12, 14, 15 |
2, 3, 6, 9, 13, 14 |
1, 2, 5, 7, 10, 12 |
16 |
0, 3, 5, 7, 13, 15 |
3, 4, 7, 10, 14, 15 |
2, 3, 6, 8, 11, 13 |
17 |
0, 1, 4, 6, 8, 14 |
0, 4, 5, 8, 11, 15 |
3, 4, 7, 9, 12, 14 |
18 |
1, 2, 5, 7, 9, 15 |
0, 1, 5, 6, 9, 12 |
4, 5, 8, 10, 13, 15 |
19 |
0, 2, 3, 6, 8, 10 |
1, 2, 6, 7, 10, 13 |
0, 5, 6, 9, 11, 14 |
20 |
1, 3, 4, 7, 9, 11 |
2, 3, 7, 8, 11, 14 |
1, 6, 7, 10, 12, 15 |
Пример выполнения задания №2
Задание:
123(16) XOR 321(8) OR 25(10) AND 1001110100(2)
или
123H XOR 321O OR 25D AND 1001110100B