- 0xc 20170125.1953(in MELPA)
- Base conversion made easy
概要
0xc.elは整数の基数変換(2進法、8進法、10進法、16進法etc)を行うコマンド集です。
M-x 0xc-convertは数と変換後の基数を入力し、変換後の数を表示します。
M-x 0xc-convert-pointはカーソル位置の数をデフォルトの基数に変換した数に置き換えます。
デフォルトは10進数に置き換えますが、数引数で基数を指定できます。
たとえば、カーソル位置の「27」を16進数に置き換えたければC-u 16 M-x 0xc-convert-pointで1Bになります。
0xc.elが受け付ける整数の記法はこのようになります。
3進数以外はよく見掛ける記法だと思います。
0x | 16進数 |
0b | 2進数 |
0d | 10進数 |
0o | 8進数 |
0t | 3進数! |
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めて0xcを使う方は
以下のコマンドを実行します。
M-x package-install 0xc
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name 0xc
標準機能でも実現可能
でも、基数の変換は標準機能でもできるんですね。
Emacs Lispの整数には#記法があります。
#b | 2進数 |
#o | 8進数 |
#x | 16進数 |
#RADIXrINTEGER | RADIX進数 |
M-: (eval-expression) に整数を評価させると、10進数以外にも8進数と16進数に変換された値も表示されます。
M-: 27 → 27 (#o33, #x1b, ?\C-\[) M-: #xff → 255 (#o377, #xff, ?ÿ) M-: #3r100 → 9 (#o11, #x9, ?\C-i)
また、C-u M-:は評価結果をバッファに書き込みますので、10進数への変換はこれで間に合ってしまいます。
参考サイト
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。