Work overview

Report 01 of 01

Full report

A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Michael S. Grant · 1997

Contents

Report 01 of 01

  1. 01Full report
Text size
Work overview

Report 1 of 1

Full report

Michael S. Grant · about 8 minutes

Original page 1

NASA Technical Memorandum 113131 A Succinct Naming Convention for Lengthy Hexadecimal Numbers Michael S. Grant Langley Research Center, Hampton, Virginia National Aeronautics and Space Administration Langley Research Center Hampton, Virginia 23681-2199 October 1997

Original page 1 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 2

Available from the following: NASA Center for AeroSpace Information (CASI) 800 Elkridge Landing Road Linthicum Heights, MD 21090-2934 (301) 621-0390 National Technical Information Service (NTIS) 5285 Port Royal Road Springfield, VA 22161-2171 (703) 487-4650

Original page 2 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 3

Abstract Engineers, computer scientists, mathematicians and others must often deal with lengthy hexadecimal numbers. As memory requirements for software increase, the associated memory address space for systems necessitates the use of longer and longer strings of hexadecimal characters to describe a given number. For example, the address space of some digital signal processors (DSP's) now ranges in the billions of words, requiring eight hexadecimal characters for many of the addresses. This technical memorandum proposes a simple grouping scheme for more clearly representing lengthy hexadecimal numbers in written material, as well as a "ode" for naming and more quickly verbalizing such numbers. This should facilitate communications among colleagues in engineering and related fields, and aid in comprehension and temporary memorization of important hexadecimal numbers during design work. Engineers and computer scientists who design hardware and software for devices such as digital signal processors (DSP's) and general purpose processors, must deal with increasingly long hexadecimal (hex) numbers. One widely used DSP, for example, has a memory address space of 4 gigawords, which is represented as '00000 0000h' to '0FFFF FFFFh'. Unlike decimal numbers, there does not appear to be a convenient or universally accepted way to name and verbalize long hexadecimal numbers. Obviously, as memory requirements expand, the situation will not become easier to deal with. A convenient, easy-to-remember convention for representing, and most importantly, naming these long strings of hex characters will now be presented. The method was designed to aid in the comprehension of long hex numbers, and to reduce the number of syllables required to verbalize a given number. First, the characters of a "long" hex number (defined here as one with more than four characters) are placed in groups of four, with a space between each group of characters. This is shown by the following example: Example l: "Ungrouped" Hex Number: 08FFF0000 Hex Number: 0 8FFF 0000 "Grouped" The "grouped" number is more easily comprehended from written material. Secondly, this four-character grouping is named using a Hex Group Code, proposed herein. Traditionally, the number in Example 1 is verbalized as "zero, eight, f, f, f, zero, zero, zero, zero." This requires a total of 14 syllables be pronounced, and the listener or the reader of technical material will often forget in a short time, if there are three f's or four, etc. This is likely due to the fact that unlike communication of decimal numbers, there seems to be no universally accepted verbiage to denote the

Original page 3 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 4

significanceof ahexdigit. Forexamplethedecimalnumber8123maybeverbalizedas"eightthousand onehundredandtwenty-three."Theterm"eightthousand"conveys"significance"information,andthe hearerknowsthatthe"8" isthefourthdigittotheleftofthedecimalplace.A similarattemptatverbalizing thehexnumberCFFFmightbe"C-thousandf-hundredandf-itty-f." Dueto the awkwardnessof such constructs,theyhavenotgainedgeneralacceptance. Table1presentsasetofnamesusingtheHex Group Code, for some of the more common groups of hexadecimal numbers. Again, the goal of this naming convention is to name _ of characters in a sensible way, in order to aid in comprehending the hex number and to minimize the number of syllables that must be spoken. Individual Chars. Code Word Hex Character Pronounced - Hex Group Pronounced - Grouping Syllables Code No. Syllables No. 00 4 000 6 0000 8 FFF 3 FFFF 4 "bi-zero" 3 "tri-zero" 3 "quad-zero" 3 "tri-f' 2 "quad-f' 2 (space) (not generally "s" 1 pronounced) Hex Group Code Examples Table 1 Table 1 is only a sampling of the complete Hex Group Code. For example, 'BBB' would be "tri-b," and 'CCCC' would be "quad-c," etc. Note that an important aspect of this code is the use of an 's' to represent the space between the fourcharacter groupings. The 's' explicitly denotes the end of one group and the start of another group when verbalizing the hex number. The importance of using the 's' to delimit groups will be shown in a later example. A few examples of the use of the Hex Group Code are given in Table 2. These are the type of hex numbers for which the Hex Group Code is most useful.

Original page 4 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 5

Grouped Hex Group Code AnUngrouped Representation Verbalization Example Representation (no.syllables) (no. syllables) T2.1 8FFFO000 8FFF 0000 "eight, tri-f, s, quad-zero" (12) (7) T2.2 6000FFFF 6000FFFF "six thousand, s, quad-f" (ll) (6) T2.3 0010AAAA 0010 AAAA "bi-zero, ten, s, quad-a" (11) (7) or simply: "ten, s, quad-a" (4) with no loss of information. Hex Group Code Examples Table 2 It is believed that using this Hex Group Code results in a more meaningful mental description when reading a long hex number, than does a traditional unsegmented list of individual hex characters. Additionally, in the author's experience, lengthy hexadecimal numbers must generally be written down to be communicated to a colleague. Thus, the use of this code is also likely to facilitate spoken communications. The groups of hex numbers named in Table 1 occur fairly routinely, particularly in processor memory maps. It is common for a block of memory addresses to begin with a number containing a group of four zero's (as in 0100 O000h) and end with a number containing a cluster of four F's (as in 0100 FFFFh). Obviously, the Hex Group Code is most useful with long hex numbers containing three or four identical characters in succession, in every four-character grouping. However, for groups that do not contain three or four matching characters, a group of two characters is used where possible. This is shown by Example 2.

Original page 5 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 6

Example2: 0012FFFF Thisnumbermaybeverbalizedas: "bi-zero,twelve,s,quad-f' (Verbalization2A), wherethefirstfour-charactergroupinghasbeenfurthersubdivided. Alternatelyit maybeverbalizedas: "twelve,s,quad-f' (Verbalization2B), wherethemostsignificanttwozero'sareleftout,withnolossofinformation. Anotherexamplewherefour-charactergroupsarefurthersubdividedisgiveninExample3. Example3: 01270B40 Thisnumbermaybeverbalizedas: twenty-seven,s,zero-b,forty" (Verbalization3A), "zero-one, ormoresuccinctly: "oh,one-twenty-seven,s,oh-b,forty." (Verbalization3B). In Example3, no HexGroupCodenamesper seareused.However,the proposedgroupingsand verbalizations(Verbalizations3Aand3B)arestillmorecomprehensibleandaremoreeasilyspokenthanis theunbrokenstringofhexcharacters. Additionally,individualpreferencesareafactorwhenusingtheHexGroupCode,asshown by Example4. Example4: 04002FFF Thisnumbermaybeverbalizedas: "oh-four,bi-zero,s,two,tri-f' (Verbalization4A). Howeversomemayprefersimply: "fourhundred,s,two,tri-f' (Verbalization4B), wherethreecharactersinthefirstgrouparethoughtofas"fourhundred."

Original page 6 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 7

Notetheimportanceof the's' whichdenotesthespacebetweenfour-charactergroups,asseenin thelast example.If oneweretoleaveoutthe's' andsay: "fourhundred,two,tri-f," thenumbercouldbemisconstruedas: "fourhundred two, tri-f," which is: 040__._2FFF, where the space that should group the four least-significant characters (2FFF) has been deliberately misplaced to show the hearer's possible confusion. In some cases, neither a Hex Group Code name nor a two- or three-character grouping is possible, as with the group: AC2B. One must then resort to the traditional character-by-character method of naming/verbalization. However, there are a great many situations involving lengthy hexadecimal numbers, which do lend themselves to the grouping and Hex Group Code naming scheme described above. By placing hexadecimal numbers in four-character groups and using the proposed Hex Group Code naming convention wherever possible, it is believed that the comprehension of lengthy hexadecimal numbers both from written material and in conversation will be improved. Additionally, the general tediousness of using such numbers as part of engineering and computer science tasks should be significantly reduced.

Original page 7 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers

Original page 8

REPORT DOCUMENTATION PAGE OMBNo. 0704-O188 I Form Approved Public reporting burden for this ¢olkmtion of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching aids'ringdata sources, gatherfng _ malnta.ining the data needed, and completing and reviewing the c_.lection of Information. Send conwlents regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate fo¢ Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, Arlington, VA 22202-4302, and to the Offme of Management and Budget, Paperwork Reduction Project (0704-0188), Washington, DC 20503. 1. AGENCY USE ONLY (Leave I_ank) 2. REPORT DATE October 1997 4. TITLE AND SUBTITLE 3. REPORT TYPE AND DATES COVERED Technical Memorandum 5. FUNDING NUMBERS A Succinct Naming Convention For Lengthy Hexadecimal Numbers 6. AUTHOR(S) Michael S. Grant 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS{ES) NASA Langley Research Center Hampton, VA 23681-2199 258-20-00-01 8. PERFORMING ORGANIZATION REPORT NUMBER 9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSORING/MONITORING National Aeronautics and Space Administration Washington, DC 20546-0001 11. SUPPLEMENTARY NOTES 12a. DISTRIBUTION/AVAILABILITY STATEMENT Unclassified-Unlimited Subject Category 59 Distribution: Nonstandard Availability: NASA CASI (301) 621-0390 13. ABSTRACT (Maximum 200 words) AGENCY REPORT NUMBER NASA TM-113131 12b. DISTRIBUTION CODE Engineers, computer scientists, mathematicians and others must often deal with lengthy hexidecimal numbers. As memory requirements for software increase, the associated memory address space for systems necessitates the use of longer and longer strings of hexadecimal characters to describe a given number. For example, the address space of some digital signal processors (DSP's) now ranges in the billions of words, requiring eight hexadecimal characters for many of the addresses. This technical memorandum proposes a simple grouping scheme for more clearly representing lengthy hexadecimal numbers in written material, as well as a "code" for naming and more quickly verbalizing such numbers. This should facilitate communications among colleagues in engineering and related fields, and aid in comprehension and temporary memorization of important hexadecimal numbers during design work. 14. SUBJECT TERMS memory 10 hexadecimal, numbering, naming, verbalization, addresses, addressing, conventions 17. SECURITY CLASSIRCATION 18. SECURITY CLP6SIRCATIO_I OF REPORT OF THIS PAGE Unclassified Unclassified NSN 7540-01-280-5500 15. NUMBER OF PAGES 16. PRICE CODE A02 19. SECURITY CLASSIFICATION 20. UMITATION OF ABSTRACT OF ABSTRACT Unclassified Standard Form 298 (Rev. 2-89 Prescribed by ANSI Std. Z-39-18 296-1(32

Original page 8 of A Succinct Naming Convention for Lengthy Hexadecimal Numbers