Как преобразовать шестнадцатеричные в десятичные числа в Calc Emacs?
Как преобразовать шестнадцатеричные числа в десятичные числа в Emacs calc?
Например, если я вхожу в FF
, я хочу, чтобы он преобразовал его в 255
.
ОБНОВЛЕНИЕ: Как мне получить обратную операцию, повернуть базу 10 на базовую 16?
Ответы
Ответ 1
Вы можете ввести любое число в формате <base>#<number>
. Пример: 16#FF
немедленно преобразуется в 255
.
Для обратного вам нужно установить режим отображения вывода. В этом примере d
r
16
RET устанавливает отображение на базу 16. Установите его на базу 10, чтобы снова получить поведение по умолчанию.
Кстати, вы также можете прочитать The Fine Manual TM: Руководство по GNU Emacs Calc.
Ответ 2
Svante ответил на ваш вопрос, но я хотел бы добавить, что изменение режима отображения Radix имеет более быстрое нажатие клавиши:
- Показать в шестнадцатеричном режиме:
d
6
- Показать в десятичном режиме:
d
0
Ответ 3
Конечно, вы можете ввести 16#FF
, чтобы ввести 0xFF
, но есть более удобный способ.
Другой вариант:
- измените основание дисплея на шестнадцатеричное с помощью
d 6
- затем введите все нужные вам шестнадцатеричные числа, добавив к ним префикс
#
, например, #FF
и <enter>
. (#
означает интерпретировать число с заданным основанием дисплея)
- После этого измените основание дисплея обратно на десятичное с помощью
d 0
.
Примечание: число, введенное без #
, всегда вставляет десятичное число.
Примечание 2: это также работает наоборот.
Отрицательные значения:
Теперь предположим, что у вас есть 8-битная система, и вы хотите знать, как десятичное число -3 хранится в оперативной памяти этой системы.
- изменить размер слова:
b w 8
- введите dec -3, набрав
3 n
и <enter>
- установите основание дисплея в шестнадцатеричное значение с двумя дополнительными обозначениями:
O d 6
. (Параметр O
as Option важен для включения двух дополнений.)
Примечание: вы видите 16##FD
. Два #
означают, что он подписан, а значение, хранящееся в ОЗУ, равно 0xFD
Вышеприведенный материал работает также с d 2
, d 8
(в качестве ярлыков для bin и oct) и другими возможными значениями радиуса отображения от 2 до 36 (d r <radix-number>
).
Эта информация взята из Руководства по Emacs Calc.