Это глупый вопрос, как:
- , добавляется ли 0 или 1 слева, не всегда определяется для отрицательных чисел (Википедия говорит, что "заполнены свободные битовые позиции, обычно с нулями" - мой акцент)
- рассматриваемый целочисленный размер не обсуждается, а
- существует несколько побитовых представлений отрицательных чисел.
В некоторых языках (например, в Java, я считаю) появились новые наиболее значимые биты, так что любая платформа, не имеющая подходящей инструкции ЦП, должна будет выдавать несколько, чтобы вычислить требуемый ответ, тогда как другие языки могут определять реализацию. выбор между поведением, которое изначально предлагает процессор.
2 является наиболее распространенным представлением отрицательных чисел. Ваш вопрос гласит: «2-е дополнение к -28 - это 11100100.» ... Я предполагаю, что это не было предоставлено как часть вопроса (немного странно, если это так, так как это после ответов). Тем не менее ...
Если мы бежим с дополнением 2 ...
11100100 >> 3 = 00011100 or 11111100 = 28 or -4
Если представление было дополнением 1:
11100011 >> 3 = 00011100 or 11111100 = 28 or -3
Если представление было знаковым, абсолютное значение:
10011100 >> 3 = 00010011 or 11110011 = 19 or -(127-12)=-115
(note that the question says a logical bit shift, which by definition ignores any possible interpretation of the bits, so the sign bit is shifted along with others)
Re #bits в int ... Я думаю, это настолько очевидно, что это приведет либо к значению, которое слишком велико, чтобы соответствовать любому из параметров, либо иначе это не будет иметь никакого значения (если добавить 1s слева для дополнения 1 или 2), что мы можем игнорировать эту проблему.
Таким образом, если мой быстрый расчет, приведенный выше, не ускользнул, -3 - это единственный ответ, который может быть верным для любой вероятной архитектуры, но все же очень маловероятно. В общем, мне интересно, не проверяли ли они на самом деле, кто был уверен, чтобы оставить вопрос без ответа, или комментировать, что ни один из ответов, скорее всего, не был правильным ...