Відповіді:
Подобається це:
echo $(( 0xA ^ 0xF ))
Або якщо ви хочете відповідь у шістнадцятковій формі:
printf '0x%X\n' $(( 0xA ^ 0xF ))
З іншого боку, calc(1)
чи підтримує xor
функцію:
$ calc
base(16)
0xa
xor(0x22, 0x33)
0x11
gdb має потужний калькулятор виразів:
gdb -q -ex 'print/x 0xA ^ 0xF' -ex q
Функція оболонки:
calc_gdb() { gdb -q -ex "print/x $*" -ex q;}
calc_gdb 0xA ^ 0xF
$1 = 0x5
Це можна зробити в bc:
echo 'xor(10,15)' | bc -l logic.bc
Або в шістнадцятковій формі:
echo 'obase=16;ibase=16; xor(AA,FF)' | bc -l logic.bc
Використовуючи логічний файл звідси .
Просто зробіть, wget http://phodd.net/gnu-bc/code/logic.bc
щоб це отримати.
bc(1)
це небо неба. :) Дякую за посилання.
Runtime error (func=(main), adr=51): Function xor not defined.
logic.bc
там посилалися на файл? Це те, що визначає, xor
здається
%#x
працює і в С, приємно!