Fact-checked by Grok 2 weeks ago

Hexadecimal

Hexadecimal is a positional numeral system with a base of , utilizing the symbols 0–9 to represent values zero through nine and the letters to represent values ten through fifteen. This system allows each digit to signify a power of 16, enabling compact encoding of numerical data compared to or representations. The origins of hexadecimal trace back to the 17th century, when explored base-16 notations, though the modern term "hexadecimal" emerged in 1950 during the development of the SEAC computer by the U.S. National Bureau of Standards, which standardized the digits 0–9 and A–F. Earlier proposals, such as Thomas Wright Hill's "sexdecimal" in 1845 and John William Nystrom's "tonal" system in 1862, laid groundwork for base-16 counting, but widespread adoption occurred with mid-20th-century computing advancements. In and digital , hexadecimal serves as a concise intermediary for , where each hex digit corresponds to four binary bits (a ), facilitating tasks like memory addressing, representation, and error reduction in programming. It is prominently applied in for color codes (e.g., #FF0000 for ), network protocols such as , and low-level hardware debugging. Conversions between hexadecimal, , and rely on place-value by powers of 16 or repeated , underscoring its utility in technical fields.

Fundamentals

Definition and Properties

Hexadecimal is a with a of , employing 16 distinct symbols to represent numerical values from to in each position. This extends the system's 10 (0-9) by incorporating six additional symbols, typically letters, to denote values 10 through 15. In hexadecimal notation, the position of each determines its place value as a power of , with the rightmost representing $16^0 = 1 and each subsequent to the left multiplying by successively higher powers of . The overall value of a hexadecimal number d_n d_{n-1} \dots d_1 d_0 is calculated as the weighted sum of its : \sum_{i=0}^{n} d_i \cdot 16^i where each d_i is an integer from 0 to 15, and n is the degree of the highest power of 16 needed. A key property of hexadecimal is its compact representation of binary data, as each hexadecimal digit encodes exactly four binary digits (bits), given that $16 = 2^4. This one-to-four correspondence reduces the length of representations for large numbers compared to pure binary strings, while also being more concise than decimal for certain computing contexts involving powers of two. Base-16 is particularly practical in digital systems because it aligns directly with binary architecture, facilitating efficient grouping of bits—such as into 8-bit bytes, which require only two hexadecimal digits—without the misalignment issues of non-power-of-2 bases like decimal.

Digits and Symbols

Hexadecimal digits represent values from to using a set of sixteen symbols. The numerals through 9 denote the values to 9, while the letters A, B, C, D, E, and represent the values 10, 11, 12, 13, 14, and , respectively. Lowercase letters a through f serve as equivalent variants for these higher values and are widely accepted in practice. Historically, the choice of letters A-F was not universal in early ; some systems employed alternative glyphs for digits beyond 9, such as U, V, W, X, Y, and Z on the SWAC computer at UCLA during the and . Other proposals have suggested non-letter symbols for higher digits to avoid confusion with alphanumeric text, but these remain rare and have not been adopted in standard usage. To identify hexadecimal numbers in programming and documentation, various prefixes and suffixes are employed. In languages like C and its derivatives, the prefix 0x (or 0X) precedes the digits, as standardized in the C programming language specification. Some assemblers, such as those from Motorola, use a $ prefix, while Intel-style assemblers append an H (or h) suffix. In contexts like HTML and CSS color codes, hexadecimal values are implicit without a prefix, typically following a # symbol and consisting of three or six digits. Hexadecimal notation exhibits no universal standard for , though it is case-insensitive in most parsers and interpreters, allowing both uppercase A-F and lowercase a-f interchangeably. Uppercase letters are preferred in formal and for clarity and tradition, whereas lowercase variants predominate in source code and informal contexts to align with common programming conventions.

Representation

Written Conventions

Hexadecimal numbers are typically written without spaces or commas between digits to maintain compactness, though for enhanced readability in lengthy representations, digits are often grouped into sets of four starting from the right, separated by spaces, such as 1A2B 3C4D for the number 1A2B3C4D. To distinguish hexadecimal from decimal numbers, explicit prefixes like 0x (common in languages such as C and Java) or suffixes like h (used in assembly and some documentation) are employed, for example, 0xFF or FFh; in programming contexts where the base is unambiguous, such identifiers may be omitted. Although hexadecimal primarily represents unsigned values, negative numbers are conventionally denoted by prefixing a minus sign to the hexadecimal representation, such as -0x10, while in binary two's complement contexts, the sign is handled through bit patterns without altering the hexadecimal notation itself. Each hexadecimal digit serves as a shorthand for a four-bit binary nibble, allowing compact representation of binary data; for instance, the digit A corresponds to the binary pattern 1010.

Verbal Description

Hexadecimal numbers are typically pronounced digit by digit, reading from left to right in a manner similar to reciting a sequence of individual characters, without applying decimal-style positional modifiers such as "teen" or "ty" endings. The digits 0 through 9 are named using cardinal numbers: zero, one, two, three, four, five, six, seven, eight, and nine. The additional digits A through F, representing values 10 to 15, are pronounced according to their English letter names: , , see, , , and eff. In certain technical contexts, particularly those involving clear audio communication like radio or telephony in computing and engineering, the NATO phonetic alphabet may be employed for the letters to minimize ambiguity: alpha for A, bravo for B, charlie for C, delta for D, echo for E, and foxtrot for F. For instance, the hexadecimal value 1A3 might be verbalized as "one ay three hex," "one alpha three hexadecimal," or simply "one A three in hex" to specify the base and prevent confusion with decimal equivalents. The abbreviation "hex" is commonly used in speech for brevity, especially among programmers and engineers. While English conventions dominate in global discussions, adaptations exist in other languages where letter pronunciations align with local phonetic norms. For example, in , the A is often pronounced as "a" (like "ah") and B as "bé," reflecting alphabet recitation, with the overall number read by followed by "hexadécimal."

Special Notations

Hexadecimal notation extends beyond standard representations to handle large or small values and signed numbers through specialized formats. Exponential notation, akin to in , is useful for compactly representing very large or small quantities in and contexts. In floating-point representations standardized by IEEE 754, hexadecimal exponential notation uses a binary exponent but is often displayed with a hexadecimal mantissa and a decimal exponent scaled to powers of 2. A common format in programming is 0xM.PpN, where M is the integer mantissa in hex, P the fractional part, and N the decimal exponent for 2^N; for example, 0x1.0p4 equals 16 in decimal (1 × 2^4). This syntax, introduced in the C99 standard, enables exact binary floating-point literals without intermediate decimal conversions, reducing rounding errors in numerical computations. Signed hexadecimal representations go beyond prefixing a minus sign for negatives, particularly in computing where encoding is prevalent for efficient arithmetic. In , a is formed by inverting all bits of its positive counterpart and adding one, then expressing the result in hexadecimal digits. For an 8-bit system, -5 () is FB in hexadecimal, as the 00000101 inverts to 11111010 and adding one yields 11111011. This method allows seamless addition and subtraction of signed values on without separate positive/negative logic. One's complement, an older alternative, inverts bits without adding one (e.g., -5 as FA hex), but it is less common today due to issues like double zero representations. In software tools and calculators supporting hexadecimal mode, implicit exponential notation often appears for floating-point or overflow values, displaying large hex numbers in scientific-like form (e.g., 1.234E+10h) to manage screen limitations. Modern scientific calculators, such as models, handle hex inputs but switch to display for results exceeding fixed-digit capacity, integrating base-16 with standard E-notation for readability during conversions or computations.

Conversion Methods

To and From Decimal

To convert a positive from to hexadecimal, apply the repeated by : divide the number by 16, record the as the next least significant (converting values 10-15 to A-F), and continue with the quotient until it reaches zero; the hexadecimal representation is then the remainders read from last to first. This method leverages the base-16 structure, where each directly yields a valid hexadecimal . For example, convert 255 from to hexadecimal: Reading upward gives FF in hexadecimal, equivalent to 255 in . To convert from hexadecimal to , expand the number using : multiply each digit's value (0-9 as is, A=10, B=11, C=12, D=13, E=14, F=15) by 16 raised to the power of its position from the right (starting at position 0), then sum the products. The general formula for a hexadecimal number with digits d_n d_{n-1} \dots d_1 d_0 is: \sum_{k=0}^{n} d_k \times 16^k = d_n \times 16^n + d_{n-1} \times 16^{n-1} + \dots + d_1 \times 16^1 + d_0 \times 16^0 For the example in hexadecimal:
  • F () × 16¹ + F () × 16⁰ = × 16 + × 1 = 240 + = 255 in .
For large integers beyond manual feasibility, such as those exceeding typical limits, programming languages handle the conversions efficiently using built-in functions; for instance, Python's arbitrary-precision integers support the hex() method on int objects to produce hexadecimal strings via the same algorithmic principles. Special cases include zero, which represents as 0 in both bases, requiring no division steps. For negative numbers, first convert the absolute value using the above methods, then prefix a minus sign to the hexadecimal result, as in signed magnitude representation.

To and From Binary

Converting binary numbers to hexadecimal involves grouping the binary digits into sets of four, known as nibbles, starting from the rightmost bit. Each nibble is then replaced by its corresponding hexadecimal digit, where 0000 represents 0, 0001 represents 1, up to 1111 representing F. If the total number of binary digits is not a multiple of four, leading zeros are added to the left to complete the leftmost nibble. For example, the binary number 11111111 groups into two nibbles (1111 and 1111), each equivalent to F, yielding FF in hexadecimal. The reverse process, converting hexadecimal to binary, replaces each hexadecimal digit with its four-bit binary equivalent: 0 is 0000, 1 is 0001, A is 1010, B is , C is 1100, D is 1101, E is 1110, and F is 1111. No padding is typically required, as each digit maps directly to a full . For instance, the hexadecimal number FF becomes 11111111 in binary by substituting F (1111) for each digit. This direct correspondence—one hexadecimal digit per —provides significant advantages in , particularly for representing bytes, which consist of eight bits or two nibbles; thus, a single byte requires exactly two hexadecimal digits for compact notation. Such conversions are supported natively in many tools, including scientific calculators in programmer mode and programming languages like , which offer built-in functions such as bin() for and hex() for hexadecimal representations, facilitating quick automation while manual methods remain useful for verification and understanding.

To Other Bases

Converting hexadecimal numbers to octal (base 8) is facilitated by their shared foundation as powers of two, allowing an intermediate binary representation where each hexadecimal digit corresponds to four bits and each octal digit to three bits. To perform the conversion, expand the hexadecimal number into its binary equivalent, then regroup the binary digits into sets of three starting from the right (padding with leading zeros if necessary), and replace each group with the corresponding octal digit. For example, the hexadecimal number FF expands to the binary 11111111; regrouping as 011 111 111 yields the octal 377, since 011 binary is 3, 111 is 7, and 111 is 7. Alternatively, conversion via decimal is possible but less direct for this pair. To convert numbers from other bases to hexadecimal, the general method involves first transforming the source number to using place-value expansion or repeated , then applying the standard hexadecimal conversion from via repeated by 16 and recording remainders. For bases that are powers of two, such as or base 4, a more efficient direct path exists through representation, avoiding full decimal intermediation. This approach leverages the compatible bit groupings: three bits per digit or two bits per base-4 digit aligning with the four bits per hexadecimal digit. Conversions between hexadecimal and less common bases, such as (base 12) or , are rare in practice and invariably require chaining through as an intermediary, with no simplified direct mapping available due to incompatible radices. , historically used in some measurement systems like inches per foot, employs digits 0-9 and symbols for 10 (often A) and 11 (B), but lacks widespread computational adoption. , utilizing 0-9 and A-Z for values up to 35, appears occasionally in compact encodings like travel record locators or unique identifiers, yet such transformations from hexadecimal proceed via for accuracy. For instance, the hexadecimal (255 ) converts to 73 in , as 7 × 36¹ + 3 × 36⁰ = 255. In all cases, no universal direct formula exists for hexadecimal conversions to arbitrary bases; efficiency depends on selecting an optimal intermediate like for general use or for power-of-two alignments, ensuring step-by-step verification to maintain precision.

Arithmetic

Basic Operations

Hexadecimal follows the same principles as but operates in base-16, where digits range from 0 to F (representing 0 to 15 in ), and carries or borrows occur when values exceed 15 or fall below 0, respectively. Operations are performed column-wise from right to left, with each position representing successive powers of 16.

Addition

Addition in hexadecimal is conducted digit by digit, starting from the least significant digit (rightmost), with a carry of 1 generated to the next column whenever the sum of digits plus any incoming carry equals or exceeds 16. The resulting digit is the sum 16, expressed using hexadecimal symbols (0-9, A-F). For example, adding (255 in ) and 1 proceeds as follows:
  FF
+  1
----
 100
The units column sums to 15 + 1 = 16 (10 in hexadecimal, with carry 1); the sixteens column then sums to 15 + 0 + 1 (carry) = 16 (10 in hexadecimal, with carry 1), yielding 100 (256 in decimal). This process handles carries by wrapping digits at F, ensuring the base-16 structure is maintained.

Subtraction

Subtraction involves digit-by-digit deduction from right to left, borrowing 16 from the next higher column (equivalent to adding 16 to the current digit and subtracting 1 from the borrower) when the minuend digit is smaller than the subtrahend. The result is the difference, with borrows propagating as needed. For instance, subtracting 1 from 100 (256 in decimal) gives:
 100
-  1
----
  FF
The units column requires borrowing: 0 - 1 becomes (16 - 1) = (F), and the sixteens column adjusts from 0 - 0 - 1 (borrow) to (F) after further borrowing from the 256s column (1 becomes 0). This results in (255 in ). Borrows ensure digits remain non-negative within 0-F.

in hexadecimal mirrors long , where each of the multiplicand is multiplied by each of the multiplier, shifted by appropriate powers of , and summed, with intermediate carries resolved modulo . Single-digit multiplications produce results up to F × F = E1 ( × = 225 in , or 14 × + 1). For example, A (10 in ) × 2 = 14 (20 in ): Carries during partial product additions follow base- rules, similar to .

Division

Division uses adapted to base-, dividing the into chunks that fit the , yielding a (0-F) and a less than , with the process repeating for subsequent digits. For example, 100 (256 in ) ÷ 10 ( in ):
10 | 100
   |  0  (initial partial dividend 10 < 10? No, but align)
   | 10   (10 goes into 10 once: 1 × 10 = 10, subtract 0)
   |  0   (bring down 0, 00 ÷ 10 = 0)
   -----
     10 rem 0
The quotient is 10 (16 in decimal), with remainder 0. Remainders are always expressed as a single hexadecimal digit.

Advanced Techniques

For efficient multiplication in hexadecimal arithmetic, multiplication tables provide a quick reference for products of single digits from 0 to F. These tables are constructed by computing each product in base 16, where results exceeding F require carrying over to higher digits, similar to the addition carry rules in basic operations. A partial table focusing on multiplications involving digits A through F illustrates the patterns, such as F × F = E1 (equivalent to 15 × 15 = 225 in decimal, or 14 × 16 + 1, yielding E1 in hex).
×ABCDEF
A646E78828C96
B6E79848F9AA5
C7884909CA8B4
D828F9CA9B6C3
E8C9AA8B6C4D2
F96A5B4C3D2E1
This table aids in manual calculations by reducing the need for repeated conversions. Powers of 16 in hexadecimal follow a simple pattern due to the : $16^n is represented as 1 followed by n zeros. For instance, $16^0 = 1, $16^1 = 10, $16^2 = 100, $16^3 = 1000, and so on, which directly corresponds to the positional weights in hex notation. This structure simplifies and powers in hex , as no conversion is needed for pure powers of the . Logarithms expressed directly in hexadecimal are rare, as they typically require approximation in or other bases for practical computation. Hexadecimal can represent rational numbers using a radix point, analogous to the point, where digits to the right denote negative powers of 16. For example, the 0x1F.F equals $1 \times 16^1 + 15 \times 16^0 + 15 \times 16^{-1} = 16 + 15 + 0.9375 = 31.9375 in , demonstrating how terminating in base 16 arise when the denominator's prime factors are limited to 2 and/or other factors of 16. Another example is 0x3F.4, which is $3 \times 16^1 + 15 \times 16^0 + 4 \times 16^{-1} = 48 + 15 + 0.25 = 63.25 . Non-terminating produce repeating expansions, limited by the base's factors. Irrational numbers like require infinite non-repeating expansions in hexadecimal, with approximations used for practical purposes. The hexadecimal representation of π begins as 3.243F6A8885A308D313198A2E037073..., where the part is 3 and the fractional digits start with 243F6A. This form is useful in contexts due to the BBP , which enables extraction of individual hex digits without prior computation. Such representations highlight the limits of finite digit approximations for irrationals in any .

Applications

In Computing

In computing, hexadecimal notation is widely used to represent memory addresses due to its compact representation of binary data, where each hexadecimal digit corresponds to four bits (a nibble), allowing a full byte to be expressed with just two digits. For instance, RAM locations are commonly denoted with a "0x" prefix, such as 0x7FFF for a specific address in a 16-bit system. This format facilitates debugging by providing a human-readable view of machine-level data without the verbosity of binary strings. Hexadecimal is integral to and programming, where encoded as values—are typically displayed and manipulated in hex for clarity. In x86 , for example, the MOV AL, 0xFF (which moves the value 255 to the AL ) assembles to the hexadecimal bytes B0 FF, with B0 as the for moving an immediate 8-bit value to the AL . This hexadecimal representation simplifies reading and writing low-level code, as it aligns closely with while being more concise. Data types in computing often leverage hexadecimal for efficient storage and visualization; a single byte, comprising 8 bits, is represented by exactly two hexadecimal digits, enabling straightforward inspection of binary files or buffers. Programming languages support hexadecimal literals prefixed by "0x" to denote integer constants in base-16, such as 0xDEADBEEF, a 32-bit value commonly used as a magic number for debugging or pattern recognition in memory. This convention is standardized in languages like C and C++, where it allows developers to specify values directly in a form that mirrors machine representation. Modern development tools extensively incorporate hexadecimal for low-level manipulation and analysis. Hex editors, such as or those integrated into , permit direct viewing and modification of file contents in hexadecimal , essential for tasks like binaries or repairing corrupted data. Debuggers like GDB or display memory dumps and register values in , aiding in runtime inspection— for example, examining a buffer at address 0x00400000. In contemporary contexts, (Wasm) binaries are often inspected or authored using hexadecimal notation for opcodes and data segments, as seen in the Wasm binary where instructions like i32.const -1 are encoded as 0x41 0xFF 0xFF 0xFF 0xFF. Similarly, Rust's and crates like provide robust parsing functions, such as hex::decode, to convert hexadecimal strings to byte arrays, supporting applications in and data .

In Data Encoding and Colors

Hexadecimal notation is widely used in for specifying colors through RGB values, where the format #RRGGBB represents red, green, and blue components as two hexadecimal digits each, allowing for 16,777,216 possible colors in the space. A form #RGB expands each digit to two identical values (e.g., #f09 becomes #ff0099), reducing the length while maintaining the same color range, as defined in CSS Color Module Level 3. This base-16 system facilitates theme creation, such as generating palettes by incrementing hex values for harmonious schemes like monochromatic or . In network protocols, MAC addresses employ hexadecimal to denote 48-bit identifiers, formatted as six pairs of two digits separated by colons or hyphens (e.g., AA:BB:CC:DD:EE:FF), ensuring unique device identification on local networks per IEEE standards. Similarly, Universally Unique Identifiers (UUIDs) use 128 bits expressed as 32 hexadecimal digits in an 8-4-4-4-12 grouped format with hyphens (e.g., 123e4567-e89b-12d3-a456-426614174000), as standardized in 9562 for applications requiring collision-resistant IDs like and distributed systems. For data encoding, hexadecimal dumps provide a human-readable view of binary files, displaying bytes as two-digit hex values alongside ASCII interpretations to aid and , as implemented in utilities like hexdump. In data URIs, which embed resources directly in documents per RFC 2397, hexadecimal appears via (%HH for bytes), but is preferred for binary data due to its 33% size efficiency over hex's 100% overhead, though both ensure safe transmission in text contexts like or CSS. Post-2020 advancements in CSS, such as the color-mix() function introduced in CSS Color Module Level 5 (first public working draft in 2020), accept hexadecimal inputs for blending colors in specified spaces (e.g., color-mix(in , #ff0000 60%, #0000ff)), enabling dynamic themes with precise control over and alpha. In Unicode, are assigned code points in hexadecimal notation (e.g., U+1F600 for grinning face), facilitating their integration into text encoding standards and rendering across platforms.

History

Origins and Development

The concept of positional numeral systems, which form the foundation for bases like hexadecimal, originated in ancient civilizations. The Babylonians developed a base-60 (sexagesimal) system around 2000 BCE, inherited from earlier Sumerian and Akkadian traditions, using just two symbols—a vertical wedge for units and a chevron for tens—to represent values from 1 to 59 in each position, with place values as powers of 60. This allowed efficient handling of large numbers for astronomy, commerce, and geometry, though it lacked a zero symbol initially, relying on context to distinguish ambiguities like 1 from 60. Although base-10 dominated later Western mathematics, earlier explorations of higher bases included Gottfried Wilhelm Leibniz's work on base-16 notations, which he termed "sedecimal," in the late 17th century. Base-16 emerged more prominently as a proposal in the for enhanced computational efficiency. In 1845, English mathematician Thomas Wright Hill introduced a "sexdecimal" system, drawing from local weights like the 16-pound stone, and suggested combinable symbols for digits 10–15 to facilitate without decimal's irregularities. This was followed in 1862 by Swedish-American inventor John William Nystrom's "tonal" base-16, which assigned phonetic names (e.g., "ton" for 10, "noll" for 0) and new symbols to streamline calculations, arguing it reduced errors in and compared to base-10. The term "hexadecimal" first appeared in 1950, referring to the notation used for inputting numbers and instructions into the Standards Eastern Automatic Computer (SEAC), developed by the U.S. National Bureau of Standards. Hexadecimal's adoption in computing accelerated in the mid-20th century as machines shifted toward byte-oriented architectures. The IBM 704, introduced in 1954, relied on octal notation for programming and data representation, aligning with its 36-bit words and 6-bit BCD characters, as seen in early FORTRAN implementations where octal codes specified machine instructions. However, hexadecimal gained traction in the 1960s with the rise of 8-bit bytes; the PDP-8 minicomputer (1965) exemplified this era's transition, though it primarily used octal, while broader standardization occurred through systems like IBM's. By 1964, IBM's System/360 architecture explicitly employed hexadecimal in its technical manuals for instruction formats and memory dumps, defining digits A–F and establishing the modern notation that aligned perfectly with 4-bit nibbles. Standardization efforts further entrenched hexadecimal in the 1960s and 1970s. The American Standard Code for Information Interchange (ASCII), finalized in 1967 after development starting in 1960, routinely used hexadecimal to denote its 7-bit (later 8-bit) character codes in documentation and implementations, facilitating cross-system compatibility. In networking, the ARPANET (launched 1969) employed hexadecimal in 1970s protocol descriptions and packet analyses, as evidenced in early RFC documents where binary packet contents were dumped in hex for debugging and specification. Computer scientist Donald Knuth reinforced its utility in his 1969 work The Art of Computer Programming, Volume 2, praising hexadecimal as an efficient representation for binary data in algorithms and noting its etymological blend of Greek and Latin roots.

Cultural and Modern Usage

In programming communities, hexadecimal fosters humor via "," where sequences like (0xDEADBEEF) are used as to fill or signal errors, evoking jokes about "dead" programs or beefy computations. This pattern, popularized in hacker folklore since the , appears in debug outputs and , symbolizing the quirky intersection of reality and human wit. Hexadecimal is a staple in education worldwide, integrated into curricula to teach data representation and low-level concepts, such as converting to hex for addressing. In the UK, resources like Teach emphasize its role in understanding instructions, while in the , AP courses on use hex to illustrate compact encoding of colors and bytes. Online tools, including hex on sites like Calculator.net, support learning by enabling instant conversions and , democratizing access for students and hobbyists. In blockchain technology, is fundamental for addresses, which are 42-character strings prefixed with "0x" to denote base-16 encoding of the last 20 bytes of a public key, ensuring unique identification on . This format facilitates secure transactions and smart contracts, with over 200 million addresses created by 2023. In the NFT space, hexadecimal strings serve as seeds for on platforms like Art Blocks, where pseudo-random hex hashes produce unique visuals, blending code with creativity in over 100,000 minted tokens since 2020. Globally, hexadecimal instruction in follows Western standards in most non-Western countries, such as and , where national curricula align with international CS frameworks like those from ACM, though emphasis varies—e.g., Japan's focus on embedded systems integrates hex earlier in secondary schooling. In regions like , adoption is growing via UNESCO-supported programs, but resource constraints lead to simplified tools over advanced simulations.

References

  1. [1]
    Hexadecimal numbers | AP CSP (article) - Khan Academy
    In the hexadecimal system, each digit represents a power of 16. Here's how to count to 10 in hexadecimal: 1, 2, 3, 4, 5, 6, 7, 8, 9, A.Missing: numeral | Show results with:numeral
  2. [2]
    Hexadecimal | Definition, System & Examples - Study.com
    Hex system is used to communicate with computers, as it allows a more concise number representation than the binary system used by computers. We learned basic ...
  3. [3]
    F Things You (Probably) Didn't Know About Hexadecimal
    Aug 18, 2022 · Hexadecimal, or base 16, has been used as a computer language for decades. But much that has been written about the development of the term ...Missing: applications | Show results with:applications
  4. [4]
    Hexadecimal system - (Intro to Electrical Engineering) - Fiveable
    This system is commonly used in computing and digital electronics because it allows for a more compact representation of binary data. It is especially useful in ...
  5. [5]
    [PDF] Number Systems and Number Representation Princeton University
    Apr 1, 2025 · The Hexadecimal Number System. Name. • “hexa-” (Ancient Greek ἑξα ... Definition. High-order bit indicates sign. 0 ⇒ positive. 1 ...Missing: numeral properties
  6. [6]
    [PDF] h04 Hexadecimal Numbers
    Hexadecimal is preferred to binary, because a hexadecimal number is much more compact than the binary equivalent, and because it's very easy to get a long ...
  7. [7]
    The Hexadecimal Number System Explained - freeCodeCamp
    Feb 9, 2020 · Digits in hexadecimal use the standard symbols 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9 to represent the corresponding value, and use the first six ...
  8. [8]
    Hexadecimal number system (video) - Khan Academy
    Oct 13, 2015 · The hexadecimal number system is a way of counting that uses 16 different symbols instead of just the ten we're used to. It uses the numbers 0-9 like we do, ...
  9. [9]
    Arithmetic Operations of Hexadecimal Numbers - GeeksforGeeks
    Feb 2, 2022 · Hexadecimal Numbers have a base of 16 digits ranging from 0 to F (i.e., 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, and A, B, C, D, E, F).<|separator|>
  10. [10]
    What are the additional symbols used in numeral systems with more ...
    Nov 20, 2011 · IIRC, on the SWAC at UCLA in the 50's and 60's, the 6 hex digits beyond 9 were U V W X Y Z. Also, for some reason, this pops into my mind for ...
  11. [11]
    [PDF] New Symbols for Base 16 and Base 256 Numerals
    Jun 6, 2017 · Hexadecimal numerals conventionally are permutations of 16 symbols, where the symbols are the digits '0'-. '9' and the letters 'A'-'F'. This ...
  12. [12]
    Hexadecimal - SparkFun Learn
    The "0x" prefix is one you'll see a lot, especially if you're doing any Arduino programming. We'll use that from now on in this tutorial. In summary: DECAF? A ...
  13. [13]
    When and where did the $ convention for hexadecimal literals ...
    Aug 16, 2020 · Motorola/MOS assemblers want a $ prefix, Intel a H suffix, C a 0x prefix and others again want a more mathematics-like prefix of 16# (Ada) or ...<|separator|>
  14. [14]
    <hex-color> - CSS - MDN Web Docs - Mozilla
    Oct 10, 2025 · The green component of the color, as a case-insensitive hexadecimal number between 0 and ff (255). If there is only one number, it is duplicated ...
  15. [15]
    Is there a reason to use uppercase letters for hexadecimal CSS ...
    Sep 21, 2015 · CSS values are case insensitive. Saying that it is not a good practice to use uppercase. Go with the norm. Use lowercase. Share.Why hexadecimal is not case sensitive in Java? - Stack OverflowConverting lowercase to uppercase assembly - hex - Stack OverflowMore results from stackoverflow.com
  16. [16]
    [PDF] A Succinct Naming Convention for Lengthy Hexadecimal Numbers
    This technical memorandum proposes a simple grouping scheme for more clearly representing lengthy hexadecimal numbers in written material, as well as a "ode".Missing: formatting prefixes
  17. [17]
    Hexadecimal Notation - an overview | ScienceDirect Topics
    Hexadecimal provides an expedient way to express binary numbers, using numerals 0–9 and letters A–F, and is often designated with the prefix 0x or the suffix “h ...
  18. [18]
    Hexadecimal (hex) Literals in C programming Language
    Feb 11, 2019 · To use hexadecimal literals, we use 0X or 0x as a prefix with the number. For example 0x10 is a hexadecimal number, which is equivalent to 16 in the decimal ...
  19. [19]
    How to represent Negative Hexadecimal in C ? | Experts Exchange
    Jul 25, 2006 · In the hexadecimal representation, negative numbers have their MSb (most significant bit) set to 1, and positive ones set to 0.Missing: literal | Show results with:literal
  20. [20]
    [PDF] Binary and Hexadecimal - Bytellect LLC
    Binary (base 2) uses 0 and 1, is the native language of computers. Hexadecimal (base 16) is a shorthand for binary, using one digit for four binary digits.
  21. [21]
    French Translation of “HEXADECIMAL” - Collins Dictionary
    Oct 27, 2025 · ... HEXADECIMAL ... French Pronunciation Guide. French Conjugations. French Sentences. English ⇄ German. English-German Dictionary. German-English ...
  22. [22]
  23. [23]
    Hexadecimal Floating-Point Constants - Exploring Binary
    yet direct — representation of a ...
  24. [24]
    Two's Complement - Cornell: Computer Science
    To get the two's complement negative notation of an integer, you write out the number in binary. You then invert the digits, and add one to the result.Contents and Introduction · Conversion from Two's... · Conversion to Two's...
  25. [25]
    Electronic Slide Rule Calculators (1972-1979)
    ... B3-34 calculators). Manual TBD. Soviet (Russian) Elektronika 1976 - $?? Another version of the Soviet Slide Rule Calculator. This is a typical example of the ...Missing: symbols | Show results with:symbols
  26. [26]
    [PDF] Binary, Octal, Decimal, and Hexadecimal Calculations - Chapter
    Negative binary, octal, and hexadecimal values are produced using the two's complement of the original value. • The following are the display capacities for ...
  27. [27]
    Conversions - Computer Science
    Algorithm to Convert From Decimal To Another Base · Let n be the decimal number. · Let m be the number, initially empty, that we are converting to. We'll be ...
  28. [28]
    [PDF] CS240 Summer 2018 - UMass Boston CS
    Jun 12, 2018 · The algorithm to convert decimal number to hex is to first divide the int number by 16, the remainder will form the first hex digit (the last ...<|control11|><|separator|>
  29. [29]
    Number Systems
    Converting Binary/Hexadecimal => Decimal · Multiply each symbol by the base value raised to a positional power and then add each product. · 11011 = 1*24 + 1*23 + ...Missing: algorithm | Show results with:algorithm
  30. [30]
    Number Systems - Hexadecimal - Back-End Engineering Curriculum
    From Hex to Decimal · Start from the right · Multiply the digit in that place by the power of 16 corresponding to that place · Add the results together.
  31. [31]
  32. [32]
    [PDF] Hexadecimal Numbers
    Oct 3, 2024 · • Group sets of 4 binary bits (nibble) and represent them with the hexadecimal equivalent. • 1011 → 0xB. 0110 → 0x6. 1110 → 0xE. • 10110110 ...
  33. [33]
    Representation of Numbers - Erik Cheever - Swarthmore College
    Using hexadecimal makes it very easy to convert back and forth from binary because each hexadecimal digit corresponds to exactly 4 bits (log 2(16) = 4) and each ...
  34. [34]
    [PDF] Episode 2.3 – Hexadecimal or Sixteen ways to nibble at binary
    Hexadecimal is a shorthand for humans to represent large binary numbers, providing a reliable way to write them. Computers do not use hexadecimal.
  35. [35]
    Chapter 2: Fundamental Concepts
    Hexadecimal number system is often abbreviated as “hex”. A nibble is defined as 4 binary bits, or one hexadecimal digit. Each value of the 4-bit nibble is ...
  36. [36]
    [PDF] Numbering Systems
    This is where the advantage of a hexadecimal representation is clear! • Each hexadecimal digit represents four binary digits. • Lookup tables (or, better yet,.
  37. [37]
  38. [38]
    Converting to hexadecimal or bit data (HEX-OF, BIT-OF) - IBM
    You can use the HEX-OF or BIT-OF intrinsic functions to convert data of any type to hexadecimal or binary digits.Missing: programming | Show results with:programming
  39. [39]
    [PDF] Conversion of Binary, Octal and Hexadecimal Numbers
    Starting at the binary point and working left, separate the bits into groups of four and replace each group with the corresponding hexadecimal digit.
  40. [40]
    [PDF] Base Conversions - UCF Department of Computer Science
    ▫ 16, as in “base 16”, is a PERFECT power of 2. ▫ This makes conversion to base 2 (binary) very EASY. ▫ Why? ▫ Each hexadecimal digit is perfectly represented ...
  41. [41]
    [PDF] Chapter 3: Number Systems - cs.wisc.edu
    hex --> octal. It is easy if you do it in two steps. 1. Convert from hexidecimal to binary. 2. Convert the binary to octal. decimal --> hex.<|control11|><|separator|>
  42. [42]
    [PDF] Octal and Hexadecimal Number Systems
    To change this number to base 10, multiply each placeholder by the amount its location represents and add: (5 x 4096) + (3 x 512) + (7 x 64) + (0 x 8) + (2 ...Missing: notation | Show results with:notation
  43. [43]
    Base 12: An Introduction | Built In
    Apr 29, 2025 · Base 12, or duodecimal, uses 12 as its base, unlike the decimal system which uses 10. It uses 0-9, A, and B.
  44. [44]
    [PDF] The Hidden Meaning in Those Letters and Numbers
    Travel reservations using a record locator may use six characters comprised of numbers and letters. These can be thought of as a base 36 cardinal numbering ...
  45. [45]
    [PDF] expressing numbers using various bases
    Dec 19, 2016 · We want here to show how one can express numbers in various bases and then show how one carries out the basic operations of addition,.
  46. [46]
    Hex, bases, and overflow - CS 301 Lecture
    To add, line up the digits, add corresponding digits, and if the per-digit sum is greater than the base, carry to the next digit. Easy, right? To subtract, do ...Missing: explained | Show results with:explained
  47. [47]
    Hexadecimal Multiplication Table - Color - Math is Fun
    Hexadecimal multiplication table, printable and color ... Hexadecimal Multiplication Table. x, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10. 1, 1, 2, 3, 4, 5 ...
  48. [48]
    [PDF] Number Representation
    Hexadecimal Fractions. 0x1F.F. 16. = 1∗161 + 15∗160 + 15∗16-1. = 16 + 15 + 15/16 = 31.9375. 10. 0x3F.4. 16. = 3∗161 + 15∗160 + 4∗16-1. = 48 + 15 + 4/16 = 63.25.
  49. [49]
    Everything You Wanted To Know About Pi, Part 5: A Formula For ...
    May 13, 2016 · So we see that the hexadecimal digits of π after the second one are 3F6A… and you can see from the leading image that this is correct. I'm ...
  50. [50]
    What is Hexadecimal Numbering ? - GeeksforGeeks
    Jul 23, 2025 · Knowing hexadecimal is essential for memory addressing, writing code, and understanding computer science concepts, including web color codes.
  51. [51]
    coder32 edition | X86 Opcode and Instruction Reference 1.12
    one-byte opcodes index: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12
  52. [52]
    Literals in C++ - GeeksforGeeks
    Jul 23, 2025 · The hexadecimal literal represents an integer in the base 16 and is preceded by either 0x or 0X prefix. The binary literal represents an ...
  53. [53]
    Top 10 Hex Editors for Linux - GeeksforGeeks
    Jun 16, 2024 · A hex editor, in simple words, allows you to examine and edit binary files. · For editing individual bytes of data, Hex editors are used and are ...<|control11|><|separator|>
  54. [54]
    Values — WebAssembly 3.0 (2025-10-16)
    All integers can be written in either decimal or hexadecimal notation. In both cases, digits can optionally be separated by underscores.
  55. [55]
    hex - Rust - Docs.rs
    Encoding and decoding hex strings. For most cases, you can simply use the decode , encode and encode_upper functions. If you need a bit more control, ...
  56. [56]
    CSS Color Module Level 3 - W3C
    Jan 18, 2022 · The format of an RGB value in hexadecimal notation is a ' # ' immediately followed by either three or six hexadecimal characters. The three- ...
  57. [57]
    CSS Color Module Level 4 - W3C
    Apr 24, 2025 · CSS has several syntaxes for specifying color values: the sRGB hex color notation which represents the RGB and alpha components in hexadecimal ...
  58. [58]
    Standard Group MAC Addresses: A Tutorial Guide
    This tutorial material provides: a) A description of the Binary and Hexadecimal Representation of IEEE 802 LAN. MAC addresses. b) A description of the sub ...
  59. [59]
    RFC 9562: Universally Unique IDentifiers (UUIDs)
    UUID Format. The UUID format is 16 octets (128 bits) in size; the variant ... hexadecimal characters separated by single dashes/hyphens. When used with ...Table of Contents · UUID Format · UUID Layouts · UUID Best Practices
  60. [60]
    hexdump(1) - Linux manual page - man7.org
    The hexdump utility displays file contents in hexadecimal, decimal, octal, or ascii, acting as a filter for specified files or standard input.
  61. [61]
    RFC 2397 - The "data" URL scheme - IETF Datatracker
    A new URL scheme, "data", is defined. It allows inclusion of small data items as "immediate" data, as if it had been included externally.
  62. [62]
    RFC 4648 - The Base16, Base32, and Base64 Data Encodings
    This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data.
  63. [63]
    CSS Color Module Level 5 - W3C
    Mar 18, 2025 · This takes the sRGB value of indianred (205 92 92) and replaces the red component with 255 to give rgb(255 92 92). Relative sRGB color syntax ...
  64. [64]
    Full Emoji List, v17.0 - Unicode
    This chart provides a list of the Unicode emoji characters and sequences, with images from different vendors, CLDR name, date, source, and keywords.Unicode Emoji Chart Format · Emoji Modifier Sequences · Of /Public/emoji/16.0
  65. [65]
    Babylonian numerals - MacTutor History of Mathematics
    The Babylonians inherited ideas from the Sumerians and from the Akkadians. From the number systems of these earlier peoples came the base of 60, that is the ...
  66. [66]
    [PDF] The FORTRAN Automatic Coding System for the IBM 704 EDPM
    Therefore, in contrast to the PAUSE, it is used where a get-off-the-machine stop, rather than a temporary stop, is desired. The octal number n is displayed on ...
  67. [67]
  68. [68]
    ASCII (American Standard Code for Information Interchange) is ...
    Work on ASCII formally began October 6, 1960, with the first meeting of the American Standards Association's (ASA) X3.2 subcommittee. The first edition of ...
  69. [69]
    20 Fun Grid Facts (Hex Grids) - Game Developer
    Hex is a stratgey board game played on a hexagonal grid of any size and several possible shapes. It was invented the first time by Danish mathematician Piet ...
  70. [70]
    Hexagonal Grids - Red Blob Games
    Mar 11, 2013 · This guide will cover various ways to make hexagonal grids, the relationships between different approaches, and common formulas and algorithms.
  71. [71]
    Hexadecimal - Teach Computing
    Learning objectives · Explain why and where hexadecimal notation is used · Explain how numbers are represented using hexadecimal · Convert decimal numbers to and ...
  72. [72]
    Hex Calculator
    This free hex calculator can add, subtract, multiply, and divide hexadecimal values, as well as convert between hexadecimal and decimal values.
  73. [73]
    What is an Ethereum Address - Etherscan Information Center
    Jun 9, 2023 · An Ethereum address is a 42-character hexadecimal address derived from the last 20 bytes of the public key controlling the account with 0x appended in front.
  74. [74]
    What Is Art Blocks: The Pioneer Platform for NFT Generative Art
    Oct 5, 2022 · Each seed, also known as a hash string, is a hexadecimal string generated pseudo-randomly when the token is minted. Each character (0-9, a-f) ...
  75. [75]
    Two-thirds of countries worldwide offer some form of computing in ...
    Jan 8, 2025 · In this article, we share results of an in-depth analysis of computing education in school curricula around the world.
  76. [76]
    Education - Non-Western, Developing, Patterns | Britannica
    Oct 26, 2025 · The Japanese education system took as its model the western European educational systems, especially that of Germany.<|control11|><|separator|>