# octal : Java Glossary

octal
Base 8 numbers, e.g. 755, made of the digits 0..7 only This is the number system we would have used had we eight fingers instead of ten. You can display in octal using code like this:
`String octal = Integer.toString( i, 8 /* radix */ );`
`int i = Integer.parseInt( g.trim(), 8 /* radix */ );`
Since the computer exclusively uses binary internally (possibly excluding BigDecimal), it makes no sense to talk about converting an int from octal to decimal or back, only a String.

In Java you can create octal literals simply by adding a leading zero like this:

`int a = 0755;`
Be careful! It is very common to specify an octal literal by mistake in Java and scratch your head for hours trying to figure out the problem.

The computer chip works internally in binary (base 2 numbers), with numbers made only of the digits 0 and 1, low voltage/high voltage. Binary numbers are somewhat bulky to write out, so they are usually written in base 16, hex, but sometimes in base 8, octal, e.g. the unix CHMOD command. It is very easy to convert octal to binary and vice versa using the following table. For example, the octal number 750 is 111101000 in binary. Converting between decimal and octal is more difficult. You must do successive divisions and moduluses by 10 or 8.

Decimal Octal Binary
0 0 000
1 1 001
2 2 010
3 3 011
4 4 100
5 5 101
6 6 110
7 7 111
binary
binary formats
chmod
conversion