Другие языки программирования и технологии

может ли быть двоичное число отрицательным

Почему бы и нет? Что в них особенного?
((Фартовый ))
((Фартовый ))
20 407
Лучший ответ
к примеру для типа ShortInt - Короткое целое 1 байт (в скобках указываю основание 2- двоичное, 10- десятичное) :
127(10) = 01111111(2)
126(10) = 01111110(2)
...
2(10) = 00000010(2)
1(10) = 00000001(2)
0(10) = 00000000(2)
-1(10) = 11111111(2)
-2(10) = 11111110(2)
....
-127(10) = 10000001(2)
-128(10) = 10000000(2)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Как не трудно заметить, при появлении в 1 разряде двоичного числа 1, оно автоматически становится отрицательным.
Для типа Integer и LongInt используется такая-же схема, только используется соответственно 2 или 4 байта.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
К стати от сюда становится ясно: почему диапазон значений числа -32768..32767 - т. е. у отрицательного на 1 число больше!
Alovuddin Tursunov
Alovuddin Tursunov
80 203
Почему нет?
В системе исчисления конечно может (да всё, что в 10теричной можно, можно и в двоичной, она ничем не "хуже")
В компьютере, где двоичная система практически используется, отрицательных быть не может, только как абстракция, от двоичного кодирования.
Это про двоичную систему счисления? Тогда нет, только 0 и 1
Андрей Шибаев
Андрей Шибаев
3 079
Нет, потому что в двоечном счислении нет цифры -1
Есть signed (знаковые типы) и unsigned (беззнаковые) - для знаковых типов самый старший бит обозначает знак (0 - это положительное число, 1 - отрицательное) . Самый простой тип byte (длина 8 бит) может принимать значения от 0 до 255 (для беззнаковых) или от -127 до 127 (для знаковых) . Так одно и то же число в двоичном виде записанное как 11111111 может иметь значение 255 (если оно беззнаковое) и -127 (если старший разряд обозначает знак) . Как видишь, вопрос лишь в том, как эти числа записывать. Применительно к компьютерам -- ему надо сказать, что это за тип данных (знаковый или беззнаковый) . Так что двоичных чисел не бывает. Числа всегда одни и те же, двоичным бывает представление числа (т. е. --форма записи) .
Dennis Smirnoff
Dennis Smirnoff
1 964
может конечно.. . проверку? ээ.. . ну операции с двоичными числами легче всего проверять переводом в десятичные)