Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная работа №3

.pdf
Скачиваний:
20
Добавлен:
11.03.2015
Размер:
1 Mб
Скачать

Лабораторная работа №3 Страница 1 из 16

Лабораторная работа №3

Практическое применение основ алгебры логики.

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

ЗАДАНИЯ:

1)Для данной программы вычислить итоговый результат (в десятичной системе счисления) со всеми расчетами в двоичной системе счисления. Задание выполнить в двух вариантах, в зависимости от того, как описываются переменные:

Var

Var

a, b, rez : shortint;

a, b, rez : byte;

2)Запишите единое составное логическое выражение (в формате одного из языков программирования или табличного редактора Excel)

If <условие> then <действие> else <действие>, ЕСЛИ(<условие>;<действие>;<действие>)

которое принимает значение "истина" тогда и только тогда, когда точка с координатами (x,y) принадлежит заштрихованной области, и "ложь" в противном случае.

3)Запишите логическое выражение (в формате одного из языков программирования или табличного редактора Excel), истинное только при выполнении указанных условий. Например, условию «x принадлежит отрезку [a, b]» соответствует логическое выражение

If (x>=a) and (x<=b) then write('Yes') else write('No');

4)Для данного целого числа А определенного типа осуществить отдельно указанные виды битовых сдвигов со всеми выкладками в двоичной системе счисления. Запишите получившиеся числа в десятичной системе счисления.

5)Используя логические, арифметические и битовые действия, осуществите указанные действия, написав необходимую последовательность команд на одном из языков программирования. Привести два примера работы данной программы над разными числами со всеми выкладками в двоичной системе счисления. Во всех таких задачах предполагается, что все используемые числа являются однобайтовыми беззнаковыми целыми (если не указано отдельно другое описание числа), а также, что отсчет битов в байте начинается с единицы, начиная с младшего бита.

6)Для заданного IP адреса и маски подсети рассчитать следующие параметры: адреса хостов в подсети (минимальный/максимальный IP), адрес подсети, число хостов, широковещательный адрес (Broadcast), префикс сети (см. дополнительную теоретическую часть).

Лабораторная работа №3 Страница 2 из 16

Задания по вариантам:

Вариант 1.

Задание 1: begin

a := not $A7;

a := not (a + 5); b := 11;

rez := a and not b; writeln(rez);

end.

Задание 2:

Задание 3:

отрезок АВ, где А(xa, ya) и B(xb, yb) целиком лежит в одной координатной четверти;

треугольник со сторонами a, b и с является равнобедренным;

целое k является двузначным числом, не кратным пяти.

Задание 4:

А= -17 (a:shortint)

логический сдвиг на 2 бита влево,

циклический сдвиг на 5 бит вправо.

Задание 5:

проверить, оканчивается ли данный байт на битовую последовательность «011»,

обнулить пятый бит целого числа,

взвести два младших бита целого числа.

Задание 6:

IP: 192.168.10.10,

маска подсети: 255.255.255.224.

Лабораторная работа №3 Страница 3 из 16

Вариант 2.

Задание 1: begin

a := $C7;

a := not (a + 4); b := 107;

rez := not a xor b; writeln(rez);

end.

Задание 2:

Задание 3:

числа А и В являются трехзначными, кратными числу С.

точки с координатами (А, В) и (С, D) лежат в одной четверти.

среди чисел А, В, С и D нет одинаковых чисел

Задание 4:

А= 201 (a: byte)

логический сдвиг на 7 бит влево,

циклический сдвиг на 2 бита вправо.

Задание 5:

проверить, удовлетворяет ли данный байт битовой маске «0??11???»,

обнулить два старших бита целого двухбайтового числа,

взвести три младших бита целого числа.

Задание 6:

IP: 100.19.103.69,

маска подсети: 255.255.248.0.

Лабораторная работа №3 Страница 4 из 16

Вариант 3.

Задание 1: begin

a := $EF;

a := not (a - 13); b := $F2;

rez := a xor b; writeln(rez);

end.

Задание 2:

Задание 3:

точки с координатами (А, В) и (С, D) лежат в разных четвертях.

только одно из чисел А, В, С четное.

прямая, проходящая через точки (А, В) и (С, D), проходит через начало координат.

Задание 4:

А= 61 (a: shortint)

логический сдвиг на 2 бита вправо,

циклический сдвиг на 5 бит влево.

Задание 5:

проверить, удовлетворяет ли данный байт битовой маске «??11???1»,

обнулить пятый и седьмой биты целого числа,

взвести младший и старший биты целого двухбайтного числа.

Задание 6:

IP: 207.88.13.25,

маска подсети: 255.128.0.0.

Лабораторная работа №3 Страница 5 из 16

Вариант 4.

Задание 1: begin

a := 42;

a := not (a and $15); b := 11 xor a;

rez := a + b; writeln(rez);

end.

Задание 2:

Задание 3:

хотя бы одно из чисел А, В и С кратно 2.

число D лежит вне отрезка [A, B].

из чисел А, В, С меньшим является С, а большим В.

Задание 4:

А= -78 (a: shortint)

арифметический сдвиг на 4 бита вправо,

циклический сдвиг на 5 бит влево.

Задание 5:

проверить, удовлетворяет ли данный байт битовой маске «*11?1»,

обнулить старший байт двухбайтового числа,

взвести пять младших бит целого числа.

Задание 6:

IP: 24.0.110.89,

маска подсети: 255.240.0.0.

Лабораторная работа №3 Страница 6 из 16

Вариант 5.

Задание 1: begin

a := 47;

a := not (a + not a + 1); b := $C1;

rez := a or b; writeln(rez);

end.

Задание 2:

Задание 3:

целое А кратно B или C и не оканчивается нулем.

неверно, что D ; 0 5; 10 .

среди чисел А, В, С есть взаимно противоположные.

Задание 4:

А= -88 (a: shortint)

арифметический сдвиг на 4 бита влево,

циклический сдвиг на 2 бита вправо.

Задание 5:

проверить, удовлетворяет ли данный байт битовой маске «11?0*»,

обнулить младший байт двухбайтового числа,

взвести два старших бита целого числа.

Задание 6:

IP: 197.100.10.107,

маска подсети: 255.252.0.0.

Лабораторная работа №3 Страница 7 из 16

Вариант 6.

Задание 1: begin

a := 13;b := $51; a := not (a * b);

rez := a and not b; writeln(rez);

end.

Задание 2:

Задание 3:

числа А, В и С одинаковые по знаку.

точки с координатами (А, В) и (С, D) лежат на координатных осях.

среди чисел А, В, С есть ровно одно отрицательное число.

Задание 4:

А= 79 (a: shortint)

логический сдвиг на 2 бита вправо,

циклический сдвиг на 5 бит влево.

Задание 5:

проверить, удовлетворяет ли данный байт битовой маске «01?11??1»,

обнулить младшую часть байта целого числа,

взвести первый и последний биты целого двухбайтового числа.

Задание 6:

IP: 142.250.0.17,

маска подсети: 255.224.0.0.

Лабораторная работа №3 Страница 8 из 16

Вариант 7.

Задание 1: begin

a := $23;

a := (a - 13) or (a + 100); b := 111;

rez := a xor b; writeln(rez);

end.

Задание 2:

Задание 3:

среди чисел А, В, С есть ровно два отрицательных числа.

точки с координатами (А, В) и (С, D) лежат по разные стороны от прямой y=x.

число Х является трехзначным числом, оканчивающимся на 25.

Задание 4:

А= 140 (a: byte)

арифметический сдвиг на 3 бита влево,

циклический сдвиг на 5 бит вправо.

Задание 5:

проверить, удовлетворяет ли данный байт одной из двух битовых масок: «11*1»,

«00*0»,

обнулить старшую часть байта целого числа,

взвести пять старших бит целого двухбайтового числа.

Задание 6:

IP: 92.118.22.7,

маска подсети: 255.255.255.252.

Лабораторная работа №3 Страница 9 из 16

Вариант 8.

Задание 1: begin

a := $A7;

a:= a + 97;

b:= 11 or a;

rez := not (a + b); writeln(rez);

end.

Задание 2:

Задание 3:

числа А, В, С одинаковы по модулю.

прямая, проходящая через точки (А, В) и (С, D), параллельной одной из осей координат.

точка с координатами (х, y) лежит во второй или третьей четверти.

Задание 4:

А= 100 (a: shortint)

арифметический сдвиг на 4 бита вправо,

циклический сдвиг на 2 бита влево.

Задание 5:

проверить, оканчивается ли данный байт на битовую последовательность «0111»,

заменить в данном байте отдельные биты так, чтобы данный байт удовлетворял битовой маске «11????00».

Задание 6:

IP: 102.198.20.100,

маска подсети: 255.255.255.248.

Лабораторная работа №3 Страница 10 из 16

Вариант 9.

Задание 1: begin

a := 13;

a := not a and (a - $13); b := $11;

rez := a - b; writeln(rez);

end.

Задание 2:

Задание 3:

из трех чисел А, В, С есть хотя бы одно число кратное 2 или 3.

число А кратно пяти или семи и не оканчивается нулем.

из чисел А, В, С меньшим является С, а большим В.

Задание 4:

А= 46 (a: shortint)

логический сдвиг на 3 бита влево,

циклический сдвиг на 5 бит вправо.

Задание 5:

проверить, присутствует ли в данном байте целиком битовая последовательность

«111111»,

заменить в данном байте отдельные биты так, чтобы данный байт удовлетворял битовой маске «??10??10».

Задание 6:

IP: 148.200.199.250,

маска подсети: 255.255.255.240.