Binary, octal, and hex arithmetic operations

Integer values can be represented in decimal, binary, octal, or hex numeric notations. By default, integer values are represented in decimal notation. Binary numbers have base 2. Octal numbers use base 8. Hexadecimal numbers use base 16. We will learn about various notations with examples in this section.

This is the syntax:

variable=base#number-in-that-base

Let's understand the preceding syntax with examples:

  • Decimal representation:
    $ declare -i x=21
    $ echo $x
    21
  
  • Binary representation:
    $ x=2#10101
    $ echo $x
    21
  
  • Octal representation:
    $ declare -i x
    $ x=8#25
    $ echo $x
    21
  • Hexadecimal representation:
    $ declare -i x
    $ x=16#15
    $ echo $x
    21
  

In the preceding examples, we displayed the decimal ...

Get Learning Linux Shell Scripting - Second Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.