# Dot-decimal notation

Dot-decimal notation is a presentation format for numerical data. It consists of a string of decimal numbers, each pair separated by a full stop (dot).

A common use of dot-decimal notation is in information technology where it is a method of writing numbers in octet-grouped base-10 (decimal) numbers separated by dots (full stops). In computer networking, Internet Protocol Version 4 addresses are commonly written using the quad-dotted notation of four decimal integers, ranging from 0 to 255 each.

## Definition and use

Dot-decimal notation is a presentation format for numerical data expressed as a string of decimal numbers each separated by a full stop.

For example, the hexadecimal number 0xFF0000 is expressed in dot-decimal notation as 255.0.0.

In computer networking, the term is often used as a synonym of dotted quad notation,[1] or quad-dotted notation, a specific use to represent Internet Protocol Version 4 addresses. [2]

Object identifiers use a style of dot-decimal notation to represent an arbitrarily deep hierarchy of objects identified by arbitrary decimal numbers.[citation needed]

An IP address (version 4) in both dot-decimal notation and binary code

An Internet Protocol Version 4 (IPv4) address consists of 32 bits, which may be divided into four octets, 8 bits each. These four octets are written in decimal numbers, ranging from 0 to 255, and are concatenated as a character string with full stop delimiters between each number.

For example, the address of the loopback interface, usually assigned the host name localhost, is 127.0.0.1. It consists of the four binary octets 01111111, 00000000, 00000000, and 00000001, forming the full 32-bit address.

There is no official specification for this textual IP address representation. The first mention of this format in RFC documents was in Mail Transfer Protocol’s (a predecessor to SMTP) RFC 780 from May 1981, where the IP address was supposed to be enclosed by brackets. (And an alternate representation was a decimal integer prefixed by a pound sign.) A table in the “Assigned Numbers” RFC 790 used the dotted decimal format, zero-padding each number to three digits.[3]

A popular implementation of IP networking, originating in 4.2BSD, contains a function `inet_aton()` to convert character strings to IP addresses. In addition to the basic four-decimals format and full 32-bit addresses, it also supported intermediate syntaxes of octet.24bits (e.g. 10.1234567; for Class A addresses) and octet.octet.16bits (e.g. 172.16.12345; for Class B addresses). It also allowed the numbers to be written in hexadecimal and octal, by prefixing them with 0x and 0, respectively. These features continue to be supported by software until today, even though they are seen as non-standard.[3] But this also means addresses where an IP address component is written with a leading zero digit may be interpreted differently by different programs: some will ignore the leading zero, some will interpret the number as octal.[4]

IP addresses in the dot-decimal notation are sometimes suffixed with a slash and a number, which is used to specify the length of the associated routing prefix. This is called CIDR notation. For example, 127.0.0.1/8 refers to an entire block of addresses all beginning with 127.