Это относится к домашнему заданию, но это не домашнее задание.
Мне сложно понять, есть ли разница в том, как побитовое (~
в C) повлияло бы на signed int
и unsigned int
при компиляции на машине большого конца по сравнению с маленькой конечной машиной.
Являются ли байты действительно "обратными", и если это так, что побитовое (и другие операторы) приводят к возникновению разного результирующего int
в зависимости от типа машины?
Пока мы находимся в нем, ответ один и тот же для каждого из побитовых операторов в C или сильно зависит от этого?
Я имею в виду следующие операторы:
~ /* bitwise Not */
& /* bitwise And */
| /* bitwise Or */
^ /* bitwise Exclusive-Or */
Благодарим вас в Advance!
Обновление: При чтении моих ответов до сих пор я вынужден спросить, влияет ли побитовый оператор на знаковый бит на signed int
. Боюсь, я немного смутился в этой части, потому что забыл обо всем этом. Адам, кажется, заявляет, что все значения рассматриваются как unsigned. Является ли знак-бит повторно примененным или однократно подписанное значение становится без знака?