Odpowiedzi:
echo 'ibase=16;C06D1000-C06A5E78' | bc
176520
Zauważ, że obsługiwane są tylko cyfry szesnastkowe WIELKIE LICZBY, ponieważ małe litery kolidowałyby z nazwami funkcji i zmiennych, dlatego w twoim przykładzie masz 0 ( var1 - var2)
Jeśli potrzebujesz również odpowiedzi w formacie szesnastkowym, po prostu ustaw obasezmienną:
echo 'obase=16;ibase=16;C06D1000-C06A5E78' | bc
2B188
PS: FYI scalenie jest przeznaczony do bazy konwersji. Od man bc:
scale defines how some operations use digits after the decimal point.
The default value of scale is 0.
obaseprzed ustawieniem ibase. Jeśli ustawisz jako ibasepierwszy, wpłynie to również na analizowaną wartość obase. tzn. ibase = 16; obase = 16;ustawia obasena 0x16 = 22