Відповіді:
echo 'ibase=16;C06D1000-C06A5E78' | bc
176520
Зауважте, що підтримуються лише шістнадцяткові цифри UPPER CASE, оскільки великі регістри суперечать іменам функцій та змінних, тому ви отримали 0 у своєму прикладі ( var1 - var2)
Якщо вам потрібна відповідь у шістнадцятковій формі, просто встановіть obaseзмінну:
echo 'obase=16;ibase=16;C06D1000-C06A5E78' | bc
2B188
PS: FYI scaleне розроблений для перетворення бази. Від man bc:
scale defines how some operations use digits after the decimal point.
The default value of scale is 0.
obaseперед налаштуванням ibase. Якщо ви встановите ibaseспочатку, то це також впливає на значення, проаналізовані для obase. тобто ibase = 16; obase = 16;встановлюється obaseна 0x16 = 22