Как конвертировать два дополнения? Программа калькулятора и пример использования

11071
ssvarc

Возможный дубликат:
Какой супер-калькулятор вы используете?

Мне нужна программа калькулятора, работающая на Windows 7, которая может выполнять преобразования двух дополнений. Конкретно преобразуйте два дополнения в обычный десятичный или двоичный код. Мне сказали, что Win 7 calc делает это.

Кто-нибудь может дать четкий, конкретный пример того, как это сделать на встроенном Calc (или любой другой свободно доступной программе)? Спасибо!

3
Подскажите, пожалуйста, как это сделать на встроенном калькуляторе? Спасибо! 14 лет назад 0
Вид -> Программист или Alt + 3 Robin Day 14 лет назад 2
Я смотрю на представление программистов, и я видел этот калькулятор, прежде чем я отправил. Я не вижу здесь, как сделать покрытия к / от двойного дополнения, и я был бы признателен за определенную помощь. Спасибо! ssvarc 14 лет назад 0
@ssvarc - Ваш вопрос перенесен сюда, где он более адаптирован. Чтобы восстановить право собственности на ваш вопрос, вам нужно связать свою учетную запись суперпользователя с вашей переполнением стека в опциях пользователя. Когда закончите, я рекомендую вам отредактировать ваш вопрос в соответствии с вашим последним комментарием. Потому что, если ваш вопрос остается общим «поиском программы калькулятора», то у нас здесь есть дубликат, и ваш вопрос будет закрыт. Gnoupi 14 лет назад 1
этот вопрос не является дубликатом http://superuser.com/questions/21950/what-super-calculator-do-you-use - хотя некоторые из этих инструментов могут иметь запрошенную функцию, в этом вопросе также задается вопрос * как использовать эту функцию *. пожалуйста, не закрывайте это как дубликат. quack quixote 14 лет назад 2
В этом случае ФП может опубликовать новый вопрос с указанием именно этого. Единственная особенность или помощь в том, как использовать что-то, не делает его меньше, чем дубликат. Поэтому он задал два отдельных вопроса. BinaryMisfit 14 лет назад 0

2 ответа на вопрос

3
ChrisF

Стандартный калькулятор имеет это встроенный.

Выберите «Просмотр»> «Программист» (Alt + 3).

Из PlanetMath :

Кроме того, отрицательные числа отображаются в дополнении к двум (а ключ изменения знака выполняет добавление к двоичному значению отображаемого значения).

Я смотрю на представление программистов, и я видел этот калькулятор, прежде чем я отправил. Я не вижу здесь, как сделать покрытия к / от двойного дополнения, и я был бы признателен за определенную помощь. Спасибо! ssvarc 14 лет назад 1
@Ssvarc - BTW - свяжите свои учетные записи SO и SU, чтобы вернуть право собственности на вопрос. ChrisF 14 лет назад 1
0
Jader Dias

Есть 2 бесплатных скриптовых языка, которые тоже являются хорошими калькуляторами:

  1. Октава http://www.gnu.org/software/octave/download.html
  2. Python http://www.python.org/

Решение для двоих дополняют на каждом из этих языков по номеру 8923:

октава

bitcmp (8923, 16)

где 16 - количество битов в результате

56612

это потому, что октава имеет дело только с положительными числами в побитовых операциях

питон

~ 8923

Результаты

-8924

Для преобразования из двоичного в десятичное

октава

BIN2DEC ( "10001011011011")

результат

8923

Для преобразования из 2 'дополнения в десятичное

октава

bitcmp (bin2dec ("10001011011011"), 16)

результат

56612

PS: команды Octave должны работать и в Matlab

Я ищу, чтобы преобразовать * из дополнения * два в десятичный или обычный двоичный файл. ssvarc 14 лет назад 0
@Ssvarc Я отредактировал, чтобы показать, как конвертировать из дополнения до двух Jader Dias 14 лет назад 0
@Ssvarc обратная операция `дополнения до двух 'сама по себе. Так что если вы хотите преобразовать `to` или` from`, это одно и то же Jader Dias 14 лет назад 0
Я до сих пор не следую. Сожалею. Если вы пытаетесь сказать, что число дополнения до двух и его аналог в обычном двоичном коде одинаковы, то нет, это не правильно. (Я вижу, что вы понимаете это на основе приведенных выше примеров, поэтому, очевидно, здесь чего-то не хватает.) ssvarc 14 лет назад 0
@Ssvar Боюсь, я не мог прояснить себя. Я говорю, что `bitcmp (bitcmp (x))` равно `x` Jader Dias 14 лет назад 0

Похожие вопросы