14 октября 2021
Битовые операции в Си
Упражнение 1. Напишите функцию, принимающую переменную unsigned int
и определяющую является ли это число степенью двойки.
Упражнение 2. Напишите функцию, принимающую переменную unsigned int
и определяющую равен ли единице i
-й бит его двоичного представления. Индекс i
также является аргументом функции.
Упражнение 3. Напишите функцию для циклической перестановки битов числа (две функции: для левой и для правой перестановок).
Упражнение 4. Написать функцию, которая определяет знак переменной int
, используя только битовые операторы.
Упражнение 5. Написать функцию, которая возвращает модуль переменной int
и не использует оператор if
.
Упражнение 6. Написать функцию, которая возвращает максимум из двух переменных типа int
и не использует оператор if
.
Упражнение 7. Написать функцию, которая проверяет имеют ли две переменные типа int
одинаковый знак и использует только битовые операции.
Упражнение 8. Написать функцию, которая изменяет знак переменной типа int
и использует только битовые операции.
Упражнение 9. Написать функцию, которая устанавливает в ноль все биты переменной типа int
, кроме k
младших битов. k
младших битов не изменяются.