- •Вопросы к экзаменационным билетам по курсу «Информатика» семестр 2
- •Математические операции.
- •Операция присвоения.
- •Операции сравнения (Операции отношений)
- •Логические операции.
- •X xor y (Исключающее или)
- •Побитовые операции.
- •Операция булевого выбора.
- •Операция последовательного выполнения.
- •Операции возвращающие тип объектов.
- •Операции преобразования типов.
- •Операция обращения к элементам классов и структур.
- •Аналоги математических операций для данных нечислового типа.
- •Материнская плата
- •Процессор
- •Оперативная память
- •Системное по
- •Классификация и основные параметры
- •Особенности выходных каскадов цифровых микросхем
- •Особенности логических элементов различных логик
- •Arpl Коррекция поля привилегий инициатора запроса в селекторе
- •Clts Сброс флага ts переключения задачи в регистре cr0
- •Lar Загрузка байта прав доступа
- •1. World Wide Web — главный информационный сервис.
- •2. Электронная почта.
- •3. Cистема телеконференций Usenet (от Users Network).
- •4. Системы информационного поиска сети Интернет.
- •Системы, основанные на предметных каталогах.
- •Автоматические индексы.
- •5. Программа пересылки файлов Ftp.
- •6. Программа удалённого доступа Telnet.
X xor y (Исключающее или)
x |
Ложь |
Истина |
NOT x |
Истина |
Ложь |
NOT x (НЕ)
Побитовые операции.
Побитовые операции выполняют действия над каждым битом в числе. Бит минимальная единица представления информации компьютере, он может хранить только два значения 0 или 1.
Вся информация в компьютере представляется в двоичном виде, то есть в виде последовательностей бит, но бит слишком маленькая величина, поэтому минимальная единица, которую компьютеры могут хранить и с которой они могут работать это байт(впрочем, обычно компьютеры работают с 32 или 64 битами).В одном байте 8 бит.
Все числа в компьютере составлены из бит, например числа 131 это следующая последовательность бит 10000011. К сожалению, более подробные объяснения в книгу не поместятся.
Так как, логический тип очень похож на один бит (так как он принимает два значение истина или ложь),то и логические операции имеют свои аналоги в побитовых, которые работают одинаково, но это не значит, что логические и побитовые операции это одно и тоже.
Рассмотрим виды побитовых операций:
1) Аналог логических операций: Or, And, Not, Xor.
2) Сдвиг влево и вправо (безнаковый сдвиг влево, знаковый сдвиг влево)
3) Циклические сдвиги.
Рассмотрим их более подробно:
1)Аналог логических операций (работают точно так же как логичные, если истину заменить на 1,ложь на 0
y x |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
x OR y (ИЛИ)
y x |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
x AND y (И)
y x |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
x XOR y (Исключающее ИЛИ)
x |
0 |
1 |
NOT x |
1 |
0 |
NOT x (НЕ)
Эти побитовые операции независимо от других бит изменяют значение каждых битов, то есть они действуют таким образом, например:
-
x
0
1
1
0
0
1
0
1
-
y
0
0
1
0
0
1
1
0
x Or y |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
x AND y |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
x XOR y |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
NOT x |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
Рассмотрим как реализуются эти четыре операции в различных языках (Basic,PL-SQL??):
Операция |
C++, C#, Java, JavaScript, Java, Transact-SQL |
Delphi |
VFP |
OR |
x|y |
x or y |
bitnot(x) |
AND |
x&y |
x and y |
bitor(x,y) |
XOR |
x^y |
x xor y |
bitand(x,y) |
NOT |
~x |
not x |
bitxor(x,y) |
2) Сдвиг влево и вправо заключается в том, что биты в числе перемещаются влево или вправо на заданное количество позиций. При обычном сдвиге биты вышедшие за границы числа пропадают, а на пустые места записываются нули, при циклическом сдвиге биты, вышедшие за границы числа, возвращаются с другой стороны числа на пустые места.
Рассмотрим как реализуются операции сдвига в различных языках (Basic,PL-SQL??):
Операция |
C++, C#, Java, JavaScript, Java, Transact-SQL, Visual Basic,VBScript |
Delphi |
VFP |
сдвиг влево |
x<<l |
x shl y |
bitlshift(x,l) |
сдвиг вправо |
x>>l |
x shl y |
bitrshift(x,l) |
Так как побитовые операции используются сравнительно редко, то в некоторых языках вместо побитовых операций используются функции с аналогичными возможностями.
Рассмотрим реализацию побитовых операций в разных языках (под х обозначаем первый аргумент, под у - второй аргумент, l - сдвиг):
Сдвиг вправо это самый быстрый способ возведения числа в степень двойки, сдвиг влево это самый быстрый способ получения корня степени двойки.