1. Perl
  2. Numerical value
  3. here

Binary, octal, and hexadecimal numerical representations

I will explain the representation of numerical values in binary, octal, and hexadecimal numbers.

Binary number

You can specify a numerical value in binary by prefixing it with 0b.

my $num_bin = 0b1111;

Octal number

If you add 0 to the beginning, you can specify a numerical value in octal.

my $num_oct = 0777;

Hexadecimal

You can specify a number in hexadecimal by prefixing it with 0x.

my $num_hex = 0xFFFF;

Output decimal, octal, hexadecimal

If you want to output in binary, octal, or hexadecimal, specify the format with printf function and output. You can output in binary with%b, octal with%o, hexadecimal (lowercase) with%x, and hexadecimal (uppercase) with%X.

# Output in binary display with %b
printf("\$num_bin = %b\n", $num_bin);

# Output in octal display with %o
printf("\$num_oct = %o\n", $num_oct);

# Output in hexadecimal with %x (lowercase)
printf("\$num_hex = %x\n", $num_hex);

# Output in hexadecimal with %X (uppercase)
printf("\$num_hex = %X\n", $num_hex);

Example

This is an example using binary, octal, and hexadecimal numbers.

use strict;
use warnings;

# You can specify a numerical value in binary by prefixing it with 0b.
my $num_bin = 0b1111;

# If you add 0 at the beginning, you can specify the numerical value in octal.
my $num_oct = 0777;

# You can specify a number in hexadecimal by prefixing it with 0x.
my $num_hex = 0xFFFF;


# Numeric literals expressed in binary, octal, and hexadecimal numbers become decimal when printed.
print "(1) Decimal value\n";
print "\$num_bin = $num_bin\n";
print "\$num_oct = $num_oct\n";
print "\$num_hex = $num_hex\n";

print "\n";

print "(2) Output in each base\n";

# Output in binary display with %b
printf("\$num_bin = %b\n", $num_bin);

# Output in octal display with %o
printf("\$num_oct = %o\n", $num_oct);

# Output in hexadecimal with %x (lowercase)
printf("\$num_hex = %x\n", $num_hex);

# Output in hexadecimal with %X (uppercase)
printf("\$num_hex = %X\n", $num_hex);

Related Informatrion