هگزادسیمال

از ویکیپدیا، دانشنامه آزاد
پرش به ناوبری پرش به جستجو

در ریاضیات و محاسبات ، سیستم اعداد هگزا دسیمال ( همچنین پایه 16 یا هگز ) یک سیستم اعداد موقعیتی است که اعداد را با استفاده از ریشه (پایه) 16 نشان می دهد. اغلب نمادهای "0" - "9" برای نشان دادن مقادیر 0 تا 9 و "A" - "F" (یا به طور جایگزین "a" - "f") برای نشان دادن مقادیر 10 تا 15 هستند.

اعداد هگزادسیمال به طور گسترده توسط طراحان و برنامه نویسان سیستم های کامپیوتری استفاده می شود زیرا آنها نمایشی مناسب برای انسان از مقادیر کدگذاری شده باینری ارائه می دهند. هر رقم هگزا دسیمال نشان دهنده چهار بیت (ارقام دودویی) است که به عنوان nibble (یا nybble) نیز شناخته می شود. به عنوان مثال، یک بایت 8 بیتی می تواند مقادیری از 00000000 تا 11111111 را به صورت باینری داشته باشد که می تواند به راحتی به صورت 00 تا FF در هگزادسیمال نمایش داده شود.

در ریاضیات، معمولاً از یک زیرنویس برای تعیین پایه استفاده می شود. به عنوان مثال، مقدار اعشار35075 به صورت هگزادسیمال به صورت 8903 16 بیان می شود . در برنامه نویسی، تعدادی نماد برای نشان دادن اعداد هگزادسیمال استفاده می شود که معمولاً شامل یک پیشوند است. پیشوند 0xدر C استفاده می شود که این مقدار را به عنوان نشان می دهد 0x8903.

هگزادسیمال در رمزگذاری انتقال Base16 استفاده می شود ، که در آن هر بایت متن ساده به دو مقدار 4 بیتی تقسیم شده و با دو رقم هگزادسیمال نشان داده می شود.

نمایندگی

نمایش کتبی

در بیشتر موارد استفاده فعلی، حروف A-F یا a-f مقادیر 10-15 را نشان می دهند، در حالی که اعداد 0-9 برای نشان دادن مقادیر معمول آنها استفاده می شود.

هیچ قرارداد جهانی برای استفاده از حروف کوچک یا بزرگ وجود ندارد، بنابراین هر یک در محیط های خاص بر اساس استانداردها یا قراردادهای جامعه رایج یا ترجیح داده می شوند. حتی مورد مخلوط استفاده می شود. نمایشگرهای هفت بخش از AbCdEF با حروف مختلط برای ایجاد ارقامی که می توانند از یکدیگر متمایز شوند استفاده می کنند.

استفاده از فاصله (به جای کاما یا علامت نقطه گذاری دیگر) برای جدا کردن مقادیر هگز در یک لیست طولانی، استانداردسازی شده است. به عنوان مثال در هگز داپ زیر، هر بایت 8 بیتی یک عدد هگز 2 رقمی است، با فاصله بین آنها، در حالی که آفست 32 بیتی در شروع، یک عدد هگز 8 رقمی است.

00000000   57  69 69  69 70 65 64 69 61 2C 20 74 68 65 20 66 00000010 72  65 65 63 67 67 65 64 69 61 61 65 64 69 61 61 61 61 68 61 74 20 61 61 61 61 61 61 61 61 61 61 61 61 61 61 6e 00000030 20 65 64               
                    
                   
     69  74  0a

تمایز از اعشار

در زمینه هایی که پایه مشخص نیست، اعداد هگزادسیمال می توانند مبهم بوده و با اعداد بیان شده در پایه های دیگر اشتباه گرفته شوند. چندین قرارداد برای بیان ارزش ها به طور واضح وجود دارد. یک زیرنویس عددی (که خودش به صورت اعشاری نوشته می‌شود) می‌تواند مبنا را به صراحت نشان دهد: 159 10 اعشاری 159 است. 159 16 هگزادسیمال 159 است که برابر با 345 10 است. برخی از نویسندگان زیرنویس متنی را ترجیح می دهند، مانند 159 اعشاری و 159 هگز ، یا 159 روز و 159 ساعت .

دونالد کنوت در کتاب خود به نام The TeXbook استفاده از حروف خاصی را برای نشان دادن یک ریشه خاص معرفی کرد . [1] نمایش های هگزادسیمال در آنجا با حروف تایپ نوشته شده است : 5A3

در سیستم های متنی خطی، مانند آنهایی که در اکثر محیط های برنامه نویسی کامپیوتری استفاده می شود، روش های مختلفی به وجود آمده است:

  • پوسته های یونیکس (و مرتبط)، زبان اسمبلی AT&T و به همین ترتیب زبان برنامه نویسی C (و نوادگان نحوی آن مانند C++ ، C# ، Go ، D ، جاوا ، جاوا اسکریپت ، پایتون و Windows PowerShell ) از پیشوند 0xبرای ثابت های عددی نمایش داده شده به صورت هگز استفاده می کنند: 0x5A3. ثابت های کاراکتر و رشته ممکن است کدهای کاراکتر را به صورت هگزا دسیمال با پیشوندی \xکه با دو رقم هگز دنبال می شود بیان کنند: '\x1B'نشان دهنده کاراکتر کنترل Esc"\x1B[0m\x1B[25;1H" است. یک رشته شامل 11 کاراکتر با دو کاراکتر Esc تعبیه شده است.[2] برای خروجی یک عدد صحیح به صورت هگزادسیمال با خانواده تابع printf ، از کد تبدیل فرمت%Xیا%xاستفاده می شود.
  • در URI ها (شامل URL هاکدهای کاراکتر به صورت جفت های هگزا دسیمال با پیشوند نوشته می شوند %: http://www.example.com/name%20with%20spacesکجاست %20کد کاراکتر فاصله (خالی) ، نقطه کد اسکی 20 در هگز، 32 در اعشار.
  • در XML و XHTML ، کاراکترها را می‌توان به صورت ارجاع کاراکترهای عددی هگزا دسیمال با استفاده از نماد بیان کرد ، برای مثال نشان‌دهنده کاراکتر U+2019 (یک علامت نقل قول سمت راست). اگر عدد وجود نداشته باشد اعشاری است (بنابراین همان کاراکتر است). [3]&#xcode;’x’
  • در استاندارد یونیکد ، یک مقدار کاراکتر با U+مقدار هگز نشان داده می شود، به عنوان مثال U+20ACعلامت یورو (€) است.
  • ارجاعات رنگی در HTML، CSS و X Window را می توان با شش رقم هگزا دسیمال (هر کدام برای مولفه های قرمز، سبز و آبی به ترتیب) با پیشوند #: سفید، برای مثال، به صورت #FFFFFF. [4] CSS همچنین به اختصارات 3 شش رقمی با یک شش رقم در هر جزء اجازه می دهد: #FA3 به اختصار #FFAA33 (نارنجی طلایی: ).
  • در MIME (افزونه‌های ایمیل) رمزگذاری قابل چاپ نقل قول ، کدهای کاراکتر به صورت جفت‌های هگزادسیمال با پیشوند =: Espa=F1a"España" نوشته می‌شوند (F1 کد ñ در مجموعه کاراکترهای ISO/IEC 8859-1 است). [5] )
  • در زبان های اسمبلی مشتق شده از اینتل و Modula-2، [6] هگزادسیمال با پسوند H یا h : یا نشان داده می شود . وقتی اولین کاراکتر رقم هگزا دسیمال یک رقم اعشاری نباشد، برخی از پیاده سازی ها به صفر اول نیاز دارند، بنابراین به جای . برخی از پیاده سازی های دیگر (مانند NASM) به اعداد به سبک C اجازه می دهند ( ).FFh05A3H0FFhFFh0x42
  • سایر زبان های اسمبلی ( 6502 ، موتورولاپاسکال ، دلفی ، برخی از نسخه های بیسیک ( Commodoreزبان گیم میکر ، گودو و فورث$ به عنوان پیشوند استفاده می کنند: $5A3.
  • برخی از زبان های اسمبلی (Microchip) از نماد H'ABCD'(برای ABCD 16 ) استفاده می کنند. به طور مشابه، Fortran 95 از Z'ABCD استفاده می کند.
  • Ada و VHDL اعداد هگزا دسیمال را در "نقل قول های عددی" قرار می دهند: 16#5A3#. برای ثابت های بردار بیت VHDL از نماد استفاده می کند x"5A3". [7]
  • Verilog ثابت‌های هگزا دسیمال را به شکل نشان می‌دهد 8'hFFکه در آن 8 تعداد بیت‌ها در مقدار و FF ثابت هگزا دسیمال است.
  • زبان Smalltalk از پیشوند استفاده می کند 16r:16r5A3
  • PostScript و پوسته Bourne و مشتقات آن هگز را با پیشوند نشان می 16#دهند 16#5A3. برای PostScript، داده های باینری (مانند پیکسل های تصویر ) را می توان به صورت جفت های هگزادسیمال متوالی بدون پیشوند بیان کرد: AA213FD51B3801043FBC...
  • Common Lisp از پیشوندها #xو #16r. تنظیم متغیرهای *read-base* [8] و *print-base* [9] به 16 نیز می تواند برای تغییر خواننده و چاپگر یک سیستم Common Lisp به نمایش عدد هگزادسیمال برای خواندن و چاپ اعداد استفاده شود. بنابراین اعداد هگزادسیمال را می توان بدون کد پیشوند #x یا #16r نشان داد، زمانی که پایه ورودی یا خروجی به 16 تغییر کرده است.
  • MSX BASIC ، [10] اعداد هگزادسیمال پیشوند QuickBASIC ، FreeBASIC و Visual Basic&H با :&H5A3
  • BBC BASIC و Locomotive BASIC& برای هگز استفاده می کنند. [11]
  • سری TI-89 و 92 از یک 0hپیشوند استفاده می کنند:0h5A3
  • ALGOL 68 از پیشوند 16rبرای نشان دادن اعداد هگزادسیمال استفاده می کند: 16r5a3. اعداد باینری، چهارتایی (پایه-4) و اعداد اکتالی را می توان به طور مشابه مشخص کرد.
  • رایج ترین فرمت هگزادسیمال در رایانه های اصلی IBM ( zSeries ) و رایانه های میان رده ( IBM i ) که سیستم عامل های سنتی ( zOS ، zVSE ، zVM ، TPF ، IBM i ) را اجرا می کنند X'5A3'، است و در Assembler، PL/I ، COBOL ، JCL استفاده می شود. ، اسکریپت ها، دستورات و مکان های دیگر. این قالب در سایر سیستم های IBM (و اکنون منسوخ شده) نیز رایج بود. گهگاه به جای آپستروف از علامت نقل قول استفاده می شد.
  • هر آدرس IPv6 را می توان به صورت هشت گروه از چهار رقم هگزادسیمال (که گاهی اوقات هگزت نامیده می شود ) نوشت، که در آن هر گروه با یک دونقطه ( :) از هم جدا می شود. به عنوان مثال، این یک آدرس IPv6 معتبر است: 2001:0db8:85a3:0000:0000:8a2e:0370:7334یا با حذف صفر به اختصار به عنوان 2001:db8:85a3::8a2e:370:7334( آدرس های IPv4 معمولاً به صورت اعشاری نوشته می شوند).
  • شناسه‌های منحصربه‌فرد جهانی به‌عنوان سی و دو رقم هگزادسیمال، اغلب در گروه‌بندی‌های نابرابر جدا از خط تیره، برای مثال نوشته می‌شوند 3F2504E0-4F89-41D3-9A0C-0305E82C3301.

سایر نمادها برای 10 تا 15 و عمدتاً مجموعه نمادهای مختلف

استفاده از حروف A تا F برای نشان دادن ارقام بالای 9 در تاریخ اولیه رایانه ها جهانی نبود.

  • در طول دهه 1950، برخی از تاسیسات، مانند Bendix-14، استفاده از ارقام 0 تا 5 را با یک خط روی هم برای نشان دادن مقادیر 10-15 به عنوان 0 ، 1 ، 2 ، 3 ، 4 و 5 ترجیح دادند .
  • کامپیوترهای SWAC ( 1950) [12] و Bendix G-15 (1956) [13] [12] از حروف کوچک u , v , w , x , y و z برای مقادیر 10 تا 15 استفاده کردند.
  • کامپیوترهای ORDVAC و ILLIAC I (1952) (و برخی از طرح های مشتق شده، به عنوان مثال BRLESC ) از حروف بزرگ K ، S ، N ، J ، F و L برای مقادیر 10 تا 15 استفاده کردند. [14] [12]
  • Librascope LGP-30 (1956) از حروف F ، G ، J ، K ، Q و W برای مقادیر 10 تا 15 استفاده کرد. [15] [12]
  • در کامپیوتر PERM ( 1956) ، اعداد هگزادسیمال به صورت حروف O برای صفر، A تا N و P برای 1 تا 15 نوشته می‌شدند . = نقطه ثابت و غیره)؛ برنامه ها بدون نام دستورالعمل نوشته شده اند. [16]
  • Honeywell Datamatic D-1000 (1957) از حروف کوچک b ، c ، d ، e ، f ، و g استفاده کرد در حالی که Elbit  100 (1967) از حروف بزرگ B ، C ، D ، E ، F و G برای مقادیر استفاده کرد. 10 تا 15. [12]
  • Monrobot XI (1960) از حروف S ، T ، U ، V ، W و X برای مقادیر 10 تا 15 استفاده کرد. [12]
  • کامپیوتر پارامتری NEC NEAC 1103 (1960) از حروف D ، G ، H ، J ، K (و احتمالاً V ) برای مقادیر 10-15 استفاده کرد. [17]
  • Pacific Data Systems 1020 (1964) از حروف L ، C ، A ، S ، M و D برای مقادیر 10 تا 15 استفاده کرد. [12]
  • نمادها و نام‌های عددی جدیدی در نماد Bibi-binary توسط Boby Lapointe در سال 1968 معرفی شدند. این نماد چندان رایج نشد.
پیشنهاد نماد هگزادسیمال بروس آلن مارتین [18]
  • بروس آلن مارتین از آزمایشگاه ملی بروکهاون انتخاب A-F را "مضحک" دانست. در نامه‌ای در سال 1968 به سردبیر CACM ، او مجموعه‌ای کاملاً جدید از نمادها را بر اساس مکان بیت‌ها پیشنهاد کرد که چندان مورد قبول واقع نشد. [18]
  • برخی از تراشه های رمزگشای نمایشگر هفت بخش (یعنی 74LS47) خروجی غیرمنتظره ای را به دلیل منطقی که فقط برای تولید 0-9 به درستی طراحی شده است، نشان می دهند. [19]

نمایش های کلامی و دیجیتالی

هیچ اعداد سنتی برای نشان دادن مقادیر ده تا پانزده وجود ندارد - حروف به عنوان جایگزین استفاده می شوند - و اکثر زبان های اروپایی فاقد اسامی غیر اعشاری برای اعداد بالای ده هستند. حتی با وجود اینکه انگلیسی برای چندین توان غیر اعشاری نام دارد ( جفت برای اولین توان باینری ، امتیاز برای اولین توان ویژسیمال ، دوز ، ناخالص و ناخالص بزرگ برای سه توان اول اثنی عشری )، هیچ نام انگلیسی قدرت های هگزا دسیمال را توصیف نمی کند (اعشار 16). , 256, 4096, 65536, ... ). برخی از افراد اعداد هگزادسیمال را رقم به رقم می خوانند، مانند شماره تلفن، یا با استفاده از الفبای آوایی ناتو ،الفبای آوایی ارتش مشترک / نیروی دریایی ، یا یک سیستم موقت مشابه . در پی پذیرش هگزا دسیمال در بین برنامه نویسان IBM System/360 ، مگنوسون (1968) [20] راهنمای تلفظی را پیشنهاد کرد که نام های کوتاهی برای حروف هگزا دسیمال می گذاشت – به عنوان مثال، "A" به عنوان "ann"، "B" تلفظ می شد. bet، C "chris"، و غیره. [20] سیستم نامگذاری دیگری توسط باب (2015) در یک سریال تلویزیونی به عنوان شوخی شرح داده شد. [21] با این حال، سیستم نامگذاری دیگری به صورت آنلاین توسط راجرز (2007) منتشر شد [22] که سعی می کند بازنمایی کلامی را در هر موردی متمایز کند، حتی زمانی که عدد واقعی حاوی اعداد A-F نباشد. نمونه ها در جداول زیر آمده است.

طرح شمارش انگشت هگزادسیمال

سیستم های شمارش بر روی ارقام برای هر دو باینری و هگزادسیمال ابداع شده است. آرتور سی. کلارک پیشنهاد کرد که از هر انگشت به عنوان بیت روشن/خاموش استفاده شود، و امکان شمارش انگشت از صفر تا 1023 10 روی ده انگشت را فراهم کند. [23] سیستم دیگری برای شمارش تا FF 16 (255 10 ) در سمت راست نشان داده شده است.

مگنوسون (1968) [20]
روش نامگذاری
عدد تلفظ
آ ان
ب شرط
سی کریس
دی نقطه
E ارنست
اف یخ زدگی
1A آننت
A0 آنتی
5B پنجاه شرط
A01C آنتی کریستین
1AD0 آننت نقطه ای
3A7D سی و آنن هفتاد نقطه
راجرز (2007) [22]
روش نامگذاری
عدد تلفظ
آ ده
ب یازده
سی دوازده
دی باد کردن
E eptwin
اف فیم
10 تکس
11 یک تک
1F fimteek
50 fiftek
C0 دوازده تک
100 صدک
1000 thousek
3E thirtek-eptwin
E1 eptek-one
C4A دوازده صد چهار تک ده
1743 one-thousek-
seven--hundrek-fourtek-3

نشانه ها

سیستم هگزا دسیمال می تواند اعداد منفی را مانند اعشار بیان کند: -2A برای نشان دادن -42 10 و غیره.

هگزادسیمال همچنین می تواند برای بیان الگوهای بیت دقیق مورد استفاده در پردازنده استفاده شود ، بنابراین دنباله ای از ارقام هگزا دسیمال ممکن است یک مقدار علامت دار یا حتی یک مقدار ممیز شناور را نشان دهد. به این ترتیب، عدد منفی -42 10 را می توان به صورت FFFF FFD6 در یک ثبات CPU 32 بیتی (در دو متمم )، به عنوان C228 0000 در یک ثبات FPU 32 بیتی یا C045 0000 0000 0000 در یک FPU 64 بیتی نوشت. ثبت نام (در استاندارد IEEE ممیز شناور ).

نماد نمایی هگزادسیمال

همانطور که اعداد اعشاری را می توان با نماد نمایی نشان داد، اعداد هگزادسیمال نیز می توانند نمایش داده شوند. طبق قرارداد، حرف P (یا p ، برای "قدرت") نشان دهنده دو بار افزایش به توان است ، در حالی که E (یا e ) هدف مشابهی را در اعشار به عنوان بخشی از نماد E انجام می دهد. عدد بعد از P اعشاری است و نشان دهنده توان باینری است. افزایش توان 1 در 2 ضرب می شود نه 16. 10.0p1 = 8.0p2 = 4.0p3 = 2.0p4 = 1.0p5. معمولاً عدد به گونه‌ای نرمال می‌شود که رقم هگزادسیمال پیشرو 1 باشد (مگر اینکه مقدار دقیقاً 0 باشد).

مثال: 1.3DEp42 نشان دهنده 1.3DE 16  × 2 42 10 است.

نماد نمایی هگزا دسیمال توسط استاندارد ممیز شناور باینری IEEE 754-2008 مورد نیاز است. این نماد را می توان برای حرف های ممیز شناور در نسخه C99 زبان برنامه نویسی C استفاده کرد. [24] با استفاده از مشخص‌کننده‌های تبدیل %a یا %A ، این نماد را می‌توان با پیاده‌سازی‌های خانواده توابع printf با پیروی از مشخصات C99 [25] و استاندارد POSIX Single Unix Specification (IEEE Std 1003.1) تولید کرد. [26]

تبدیل

تبدیل باینری

اکثر رایانه ها داده های باینری را دستکاری می کنند، اما کار با تعداد زیادی ارقام حتی برای یک عدد باینری نسبتاً کوچک برای انسان دشوار است. اگرچه اکثر انسان ها با سیستم پایه 10 آشنا هستند، اما نگاشت باینری به هگزادسیمال بسیار ساده تر از اعشاری است زیرا هر رقم هگزادسیمال به تعداد کامل بیت نگاشت می شود (4 10 ). این مثال 1111 2 را به پایه ده تبدیل می کند. از آنجایی که هر موقعیت در یک عدد باینری می‌تواند شامل 1 یا 0 باشد، ممکن است مقدار آن به راحتی با موقعیت آن از سمت راست تعیین شود:

  • 0001 2 = 1 10
  • 0010 2 = 2 10
  • 0100 2 = 4 10
  • 1000 2 = 8 10

از این رو:

1111 2 = 8 10 + 4 10 + 2 10 + 1 10
  = 15 10

با کمی تمرین، نگاشت 1111 2 به F 16 در یک مرحله آسان می شود: جدول را در نمایش نوشتاری ببینید . مزیت استفاده از هگزادسیمال به جای اعشاری به سرعت با اندازه عدد افزایش می یابد. وقتی عدد بزرگ می شود، تبدیل به اعشار بسیار خسته کننده است. با این حال، هنگام نگاشت به هگزادسیمال، بی اهمیت است که رشته باینری را به عنوان گروه های 4 رقمی در نظر بگیریم و هر کدام را به یک رقم هگزادسیمال نگاشت کنیم. [27]

این مثال تبدیل یک عدد باینری به اعشاری، نگاشت هر رقم به مقدار اعشاری و اضافه کردن نتایج را نشان می دهد.

(01011110101101010010) 2 = 262144 10 + 65536 10 + 32768 10 + 16384 10 + 8192 10 + 2048 10 + 512 10 + 256 10 + 64 10 + 16 10 + 2 10
  = 387922 10

این را با تبدیل به هگزادسیمال مقایسه کنید، جایی که هر گروه از چهار رقم را می توان به طور مستقل در نظر گرفت و مستقیماً تبدیل کرد:

(01011110101101010010) 2 = 0101  1110  1011  0101  0010 2
  = 5 E ب 5 2 16
  = 5EB52 16

تبدیل از هگزادسیمال به باینری به همان اندازه مستقیم است. [27]

سایر تبدیل های ساده

اگرچه کواترنری (پایه 4) کم استفاده می شود، اما به راحتی می توان آن را به هگزادسیمال یا باینری تبدیل کرد. هر رقم هگزادسیمال مربوط به یک جفت رقم چهارتایی و هر رقم چهارتایی مربوط به یک جفت رقم باینری است. در مثال بالا 5 E B 5 2 16 = 11 32 23 11 02 4 .

سیستم هشتی (پایه 8) را نیز می توان با سهولت نسبی تبدیل کرد، البته نه به اندازه پایه های 2 و 4. بنابراین، ما می‌توانیم بین اکتال و هگزادسیمال را از طریق یک تبدیل میانی به باینری و سپس گروه‌بندی مجدد ارقام باینری در گروه‌های سه یا چهارتایی تبدیل کنیم.

بخش باقی مانده در منبع منبع

مانند همه پایه ها، یک الگوریتم ساده برای تبدیل نمایش یک عدد به هگزا دسیمال با انجام عملیات تقسیم اعداد صحیح و باقیمانده در مبدا منبع وجود دارد. از نظر تئوری، این از هر پایه ای امکان پذیر است، اما برای اکثر انسان ها فقط اعشاری و برای اکثر رایانه ها فقط باینری (که می تواند با روش های بسیار کارآمدتر تبدیل شود) به راحتی با این روش قابل کنترل است.

فرض کنید d عددی باشد که باید به صورت هگزادسیمال نشان داده شود، و سری h i h i−1 ...h 2 h 1 ارقام هگزادسیمال نشان دهنده عدد باشد.

  1. من ← 1
  2. h i ← d mod 16
  3. d ← (d − h i ) / 16
  4. اگر d = 0 (سری h i را برگردانید ) دیگری i را افزایش دهید و به مرحله 2 بروید

"16" را می توان با هر پایه دیگری که ممکن است مورد نظر جایگزین شود.

در زیر یک پیاده سازی جاوا اسکریپت از الگوریتم فوق برای تبدیل هر عدد به هگزادسیمال در نمایش رشته است. هدف آن نشان دادن الگوریتم فوق است. با این حال، برای کار جدی با داده ها، بهتر است با عملگرهای بیتی کار کنید.

تابع  toHex ( d )  { 
  var  r  =  d  %  16 ; 
  if  ( d  -  r  ==  0 )  { 
    return  toChar ( r ); 
  } 
  return  toHex (( d  -  r )  /  16 )  +  toChar ( r ); 
}

function  toChar ( n )  { 
  const  alpha  =  "0123456789ABCDEF" ; 
  بازگشت  آلفا . charAt ( n ); 
}

تبدیل از طریق جمع و ضرب

جدول ضرب هگزادسیمال

همچنین می توان با اختصاص دادن نمایش هگزادسیمال ارزش مکانی هر مکان در پایه منبع - قبل از انجام ضرب و جمع برای بدست آوردن نمایش نهایی، تبدیل را انجام داد. به عنوان مثال، برای تبدیل عدد B3AD به اعشاری، می توان عدد هگزا دسیمال را به ارقام آن تقسیم کرد: B (11 10 )، 3 (3 10 )، A (10 10 ) و D (13 10 )، و سپس عدد نهایی را بدست آورد. با ضرب هر نمایش اعشاری در p 16 نتیجه می شود ( p موقعیت رقم ششصده متناظر است که از راست به چپ شمارش می شود و با 0 شروع می شود). در این مورد داریم که:

B3AD = (11 × 16 3 ) + (3 × 16 2 ) + (10 × 16 1 ) + (13 × 16 0 )

که در پایه 10 45997 است.

ابزارهای تبدیل

بسیاری از سیستم‌های کامپیوتری یک ابزار ماشین‌حساب را ارائه می‌کنند که قادر به انجام تبدیل‌ها بین رادهای مختلف اغلب از جمله هگزادسیمال است.

در مایکروسافت ویندوز ، ابزار Calculator را می توان روی حالت علمی (که در برخی نسخه ها حالت برنامه نویس نامیده می شود) تنظیم کرد، که امکان تبدیل بین ریشه 16 (هگزادسیمال)، 10 (اعشار)، 8 ( هشتی ) و 2 ( باینری ) را فراهم می کند، که بیشتر پایه ها هستند. معمولا توسط برنامه نویسان استفاده می شود. در حالت علمی، صفحه‌کلید عددی روی صفحه شامل ارقام هگزا دسیمال A تا F است که با انتخاب «Hex» فعال هستند. اما در حالت هگز، ماشین حساب ویندوز فقط از اعداد صحیح پشتیبانی می کند.

محاسبات ابتدایی

عملیات ابتدایی مانند جمع، تفریق، ضرب و تقسیم را می توان به طور غیرمستقیم از طریق تبدیل به یک سیستم اعداد متناوب ، مانند سیستم اعشاری رایج یا سیستم دودویی که در آن هر رقم هگز با چهار رقم باینری مطابقت دارد، انجام داد.

از طرف دیگر، می‌توان عملیات ابتدایی را مستقیماً در خود سیستم هگز انجام داد – با تکیه بر جداول جمع/ضرب و الگوریتم‌های استاندارد متناظر آن مانند تقسیم طولانی و الگوریتم تفریق سنتی.

اعداد واقعی

اعداد گویا

همانند سایر سیستم‌های اعداد، سیستم هگزا دسیمال را می‌توان برای نمایش اعداد گویا استفاده کرد ، اگرچه بسط‌های تکراری رایج هستند زیرا شانزده (10 16 ) فقط یک عامل اول دارد. دو

برای هر پایه، 0.1 (یا "1/10") همیشه معادل یک تقسیم بر نمایش آن مقدار پایه در سیستم اعداد خودش است. بنابراین، چه تقسیم یک بر دو برای باینری یا تقسیم یک بر شانزده برای هگزادسیمال، هر دوی این کسرها به صورت 0.1. از آنجایی که ریشه 16 یک مربع کامل است (4 2 )، کسری که به صورت هگزا دسیمال بیان می شود، دوره فرد بسیار بیشتری نسبت به اعشار دارد و هیچ اعداد چرخه ای (به جز اعداد تک رقمی بی اهمیت) وجود ندارد. ارقام تکرار شونده زمانی نشان داده می شوند که مخرج در کمترین حالت دارای یک عامل اول باشد که در ریشه یافت نمی شود. بنابراین، هنگام استفاده از نماد هگزادسیمال، همه کسری با مخرجی که توان دو نیستمنجر به یک رشته بی نهایت از ارقام تکرار شونده (مانند یک سوم و پنجم) می شود. این باعث می‌شود که هگزادسیمال (و باینری) کمتر از اعشار برای نمایش اعداد گویا راحت باشد زیرا نسبت بزرگ‌تری خارج از محدوده نمایش محدود آن قرار دارد.

تمام اعداد گویا که به صورت متناهی در هگزادسیمال قابل نمایش هستند نیز به طور محدود در اعشار، دوازده اعشاری و جنسیتی قابل نمایش هستند: یعنی هر عدد هگزا دسیمالی با تعداد ارقام متناهی نیز زمانی که در آن پایه های دیگر بیان می شود، تعداد ارقام محدودی دارد. برعکس، تنها کسری از آنهایی که به طور محدود در پایه های دوم قابل نمایش هستند، به طور محدود در هگزادسیمال قابل نمایش هستند. به عنوان مثال، اعشاری 0.1 مربوط به نمایش تکراری بی نهایت 0.1 9 در هگزا دسیمال است. با این حال، هگزا دسیمال برای نمایش کسری با توان دو در مخرج کارآمدتر از اثنی عشر و جنسیتی است. برای مثال، 0.0625 10 (یک شانزدهم) معادل 0.1 16 ، 0.09 12 است.و 0;3،45 60 .

n
ضرایب اول اعشاری پایه، b = 10: 2 , 5 ; b − 1 = 9: 3 ; b + 1 = 11: 11

ضرایب اول هگزادسیمال پایه، b = 16 10 = 10: 2 ; b − 1 = 15 10 = F: 3, 5 ; b + 1 = 17 10 = 11: 11
کسر عوامل اصلی نمایندگی موضعی نمایندگی موضعی عوامل اصلی کسر (1/n)
2 1/2 2 0.5 0.8 2 1/2
3 1/3 3 0. 3333... = 0. 3 0. 5555... = 0. 5 3 1/3
4 1/4 2 0.25 0.4 2 1/4
5 1/5 5 0.2 0. 3 5 1/5
6 1/6 2 ، 3 0.1 6 0.2 A 2 ، 3 1/6
7 1/7 7 0. 142857 0. 249 7 1/7
8 1/8 2 0.125 0.2 2 1/8
9 1/9 3 0. 1 0. 1C7 3 1/9
10 1/10 2 ، 5 0.1 0.1 9 2 ، 5 1/A
11 1/11 11 0. 09 0. 1745D ب 1/B
12 1/12 2 ، 3 0.08 3 0.1 5 2 ، 3 1/C
13 1/13 13 0. 076923 0. 13B دی 1/D
14 1/14 2 ، 7 0.0 714285 0.1 249 2 ، 7 1/E
15 1/15 3 ، 5 0.0 6 0. 1 3 ، 5 1/F
16 1/16 2 0.0625 0.1 2 1/10
17 1/17 17 0. 0588235294117647 0. 0F 11 1/11
18 1/18 2 ، 3 0.0 5 0.0 E38 2 ، 3 1/12
19 1/19 19 0. 052631578947368421 0. 0D79435E5 13 1/13
20 1/20 2 ، 5 0.05 0.0 C 2 ، 5 1/14
21 1/21 3 ، 7 0. 047619 0. 0C3 3 ، 7 1/15
22 1/22 2 ، 11 0.0 45 0.0 BA2E8 2 ، B 1/16
23 1/23 23 0. 0434782608695652173913 0. 0B21642C859 17 1/17
24 1/24 2 ، 3 0.041 6 0.0 A 2 ، 3 1/18
25 1/25 5 0.04 0. 0A3D7 5 1/19
26 1/26 2 ، 13 0.0 384615 0.0 9D8 2 ، D 1/1A
27 1/27 3 0. 037 0. 097B425ED 3 1/1B
28 1/28 2 ، 7 0.03 571428 0.0 924 2 ، 7 1/1C
29 1/29 29 0. 0344827586206896551724137931 0. 08D3DCB 1D 1/1D
30 1/30 2 ، 3 ، 5 0.0 3 0.0 8 2 ، 3 ، 5 1/1E
31 1/31 31 0. 032258064516129 0. 08421 1F 1/1 فارنهایت
32 1/32 2 0.03125 0.08 2 1/20
33 1/33 3 ، 11 0. 03 0. 07C1F 3 ، ب 1/21
34 1/34 2 ، 17 0.0 2941176470588235 0.0 78 2 ، 11 1/22
35 1/35 5 ، 7 0.0 285714 0. 075 5 ، 7 1/23
36 1/36 2 ، 3 0.02 7 0.0 71C 2 ، 3 1/24

اعداد غیر منطقی

جدول زیر بسط برخی از اعداد غیر منطقی رایج را در اعشار و هگزادسیمال نشان می دهد.

عدد نمایندگی موضعی
اعشاری هگزادسیمال
2 (طول مورب یک واحد مربع ) 1.414 213 562 373 095 048 ... 1.6A09E667F3BCD...
3 (طول مورب یک مکعب واحد ) 1.732 050 807 568 877 293 ... 1.BB67AE8584CAA...
5 (طول قطر یک مستطیل 1×2 ) 2.236 067 977 499 789 696 ... 2.3C6EF372FE95...
φ (ph، نسبت طلایی = (1+ 5 )/2 ) 1.618 033 988 749 894 848 ... 1.9E3779B97F4A...
π (pi، نسبت محیط به قطر یک دایره) 3.141 592 653 589 793 238 462 643
383 279 502 884 197 169 399 375 105 ...
3.243F6A8885A308D313198A2E0
3707344A4093822299F31D008...
e (پایه لگاریتم طبیعی ) 2.718 281 828 459 045 235 ... 2.B7E151628AED2A6B...
τ ( ثابت Thue-Morse ) 0.412 454 033 640 107 597 ... 0.6996 9669 9669 6996...
γ (تفاوت محدود کننده بین
سری هارمونیک و لگاریتم طبیعی)
0.577 215 664 901 532 860 ... 0.93C467E37DB0C7A4D1B...

قدرت ها

توان های دو انبساط بسیار ساده ای در هگزادسیمال دارند. شانزده توان اول دو در زیر نشان داده شده است.

2 x مقدار مقدار (اعشاری)
2 0 1 1
2 1 2 2
2 2 4 4
2 3 8 8
2 4 10 هگز 16 دسامبر
2 5 20 هگز 32 دسامبر
2 6 40 هگز 64 دسامبر
2 7 80 هگز 128 دسامبر
2 8 100 هگز 256 دسامبر
2 9 200 هگز 512 دسامبر
2 A (2 10 دسامبر ) 400 هگز 1024 دسامبر
2 B (2 11 دسامبر ) 800 هگز دسامبر 2048
2 C (2 12 دسامبر ) 1000 هگز 4096 دسامبر
2 D (2 13 دسامبر ) 2000 هگز 8192 دسامبر
2 E (2 14 دسامبر ) 4000 هگز 16,384 دسامبر
2 فارنهایت (2 15 دسامبر ) 8000 هگز 32,768 دسامبر
2 10 (2 16 دسامبر ) 10000 هگز 65,536 دسامبر

تاریخ فرهنگی

واحدهای اندازه گیری سنتی چینی پایه 16 بودند. به عنوان مثال، یک جین (斤) در سیستم قدیمی برابر با شانزده تل است. از suanpan ( چرتکه چینی ) می توان برای انجام محاسبات هگزادسیمال مانند جمع و تفریق استفاده کرد. [28]

همانند سیستم اثنی عشر ، گاهاً تلاش هایی برای ترویج هگزادسیمال به عنوان سیستم اعداد ترجیحی صورت گرفته است. این تلاش ها اغلب تلفظ و نمادهای خاصی را برای اعداد فردی پیشنهاد می کنند. [29] برخی از پیشنهادات معیارهای استاندارد را به گونه‌ای یکسان می‌کنند که مضرب 16 باشند. [30] [31] چنین پیشنهادی اولیه توسط جان دبلیو. نیستروم در پروژه سیستم جدید حساب، وزن، اندازه‌گیری و سکه ارائه شد. به نام سیستم تونال، با شانزده به پایه ، منتشر شده در سال 1862. [32] نیستروم در میان چیزهای دیگر زمان هگزادسیمال را پیشنهاد کرد ، که یک روز را بر 16 تقسیم می کند، به طوری که 16 "ساعت" وجود دارد (یا "10"tims "، تلفظ می شود tontim ) در یک روز. [33]

کلمه هگزا دسیمال اولین بار در سال 1952 ثبت شد. [34] این کلمه ماکارونی است به این معنا که کلمه یونانی ἕξ (هگز) "شش" را با لاتین - اعشاری ترکیب می کند. جایگزین کاملا لاتین sexadecimal (کلمه sexagesimal را برای پایه 60 مقایسه کنید) قدیمی‌تر است و حداقل گاهی اوقات از اواخر قرن 19 استفاده می‌شود. [35] هنوز در دهه 1950 در اسناد Bendix استفاده می شود. شوارتزمن (1994) استدلال می کند که ممکن است از استفاده از sexadecimal به دلیل مخفف پیشنهادی جنسیت اجتناب شود . [36] بسیاری از زبان‌های غربی از دهه 1960 اصطلاحاتی معادل هگزادسیمال (مثلاً هگزادسیمال فرانسوی ، esadecimal ایتالیایی ، هگزاسیمال رومانیایی ، صربی хексадецимални و غیره) را پذیرفته‌اند ، اما برخی دیگر اصطلاحاتی را معرفی کرده‌اند که جایگزین واژه‌های بومی به جای «شانزده»، ایسلندی، یونانی δεκαεξικός. sextándakerfi ، روسی ششнадцатеричной و غیره)

اصطلاحات و نمادها تا پایان دهه 1960 حل و فصل نشدند. دونالد کنوت در سال 1969 استدلال کرد که اصطلاح از نظر ریشه‌شناختی صحیح می‌تواند senidenary یا احتمالاً بی‌تحرک باشد ، یک اصطلاح لاتینی که برای انتقال «گروه‌بندی 16» با الگوبرداری از دوتایی ، سه تایی و چهارتایی و غیره طراحی شده است. بر اساس استدلال کنوث، اصطلاحات صحیح برای اعشار و اکتال . حساب به ترتیب دناری و اکتونی خواهد بود. [37] آلفرد ب. تیلور از سنناری استفاده کرددر اواسط دهه 1800 روی مبانی اعداد جایگزین کار می کرد، اگرچه پایه 16 را به دلیل "تعداد ارقام نامناسب" رد کرد. [38] [39]

نماد فعلی با استفاده از حروف A تا F خود را به عنوان استاندارد واقعی در سال 1966 تثبیت می کند، پس از انتشار کتابچه راهنمای Fortran IV برای IBM System/360 ، که (برخلاف انواع قبلی Fortran) یک استاندارد را به رسمیت می شناسد. برای وارد کردن ثابت های هگزادسیمال [40] همانطور که در بالا ذکر شد، نمادهای جایگزین توسط NEC (1960) و Pacific Data Systems 1020 (1964) استفاده شد. به نظر می رسد استانداردی که توسط IBM پذیرفته شده است تا سال 1968 به طور گسترده مورد پذیرش قرار گرفت، زمانی که بروس آلن مارتین در نامه خود به سردبیر CACM شکایت کرد که

«با انتخاب مضحک حروف A، B، C، D، E، F به عنوان نمادهای اعداد هگزا دسیمال که به مشکلات مشکل‌ساز تشخیص اعداد هشت‌گانه (یا هگز) از اعداد اعشاری (یا نام‌های متغیر) اضافه می‌کند، زمان برای بررسی مجدد فرا رسیده است. از نمادهای عددی ما. این باید قبل از اینکه انتخاب های ضعیف به یک استاندارد واقعی تبدیل شوند، انجام می شد!

استدلال مارتین این بود که استفاده از اعداد 0 تا 9 در اعداد غیر اعشاری "برای ما بر یک طرح ارزش مکانی پایه ده دلالت دارد": "چرا از نمادها (و نام‌های) کاملاً جدید برای هفت یا پانزده رقم غیرصفر مورد نیاز در هشت یا هگز استفاده نکنیم. حتی استفاده از حروف A تا P یک پیشرفت خواهد بود، اما نمادهای کاملاً جدید می توانند ماهیت باینری سیستم را منعکس کنند. [18]

Base16 (رمزگذاری انتقال)

Base16 (به عنوان یک نام خاص بدون فاصله) همچنین می تواند به یک کدگذاری متنی باینری متعلق به همان خانواده Base32 ، Base58 و Base64 اشاره کند.

در این مورد، داده ها به دنباله های 4 بیتی شکسته می شوند و هر مقدار (بین 0 تا 15 شامل) با استفاده از 16 نماد از مجموعه کاراکترهای ASCII کدگذاری می شود. اگرچه هر 16 نماد از مجموعه کاراکترهای ASCII را می توان استفاده کرد، اما در عمل ارقام ASCII '0'-'9' و حروف 'A'-'F' (یا حروف کوچک 'a'-'f') همیشه انتخاب می شوند. به منظور تراز کردن با نماد نوشتاری استاندارد برای اعداد هگزادسیمال.

چندین مزیت رمزگذاری Base16 وجود دارد:

  • اکثر زبان های برنامه نویسی از قبل امکاناتی برای تجزیه هگزادسیمال کدگذاری شده با اسکی دارند
  • پردازش 4 بیتی که دقیقاً نیم بایت است، راحت تر از 5 یا 6 بیت Base32 و Base64 است.
  • نمادهای 0-9 و AF در نماد هگزادسیمال جهانی هستند، بنابراین بدون نیاز به تکیه بر جدول جستجوی نمادها به راحتی در یک نگاه قابل درک است.
  • بسیاری از معماری‌های CPU دارای دستورالعمل‌های اختصاصی هستند که امکان دسترسی به نیم بایت (که در غیر این صورت به عنوان " nibble " شناخته می‌شود، را می‌دهد و آن را در سخت‌افزار کارآمدتر از Base32 و Base64 می‌کند.

معایب اصلی کدگذاری Base16 عبارتند از:

  • بازده فضا تنها 50 درصد است، زیرا هر مقدار 4 بیتی از داده های اصلی به عنوان یک بایت 8 بیتی کدگذاری می شود. در مقابل، کدهای Base32 و Base64 به ترتیب دارای بازده فضایی 63 و 75 درصد هستند.
  • پیچیدگی احتمالی برای پذیرش هر دو حروف بزرگ و کوچک

پشتیبانی از رمزگذاری Base16 در محاسبات مدرن همه جا وجود دارد. این مبنای استاندارد W3C برای رمزگذاری درصد URL است، که در آن یک کاراکتر با علامت درصد "%" و فرم کدگذاری شده با Base16 جایگزین می شود. اکثر زبان های برنامه نویسی مدرن مستقیماً شامل پشتیبانی از قالب بندی و تجزیه اعداد رمزگذاری شده با Base16 می شوند.

همچنین ببینید

منابع

  1. دونالد ای. کنوت. TeXbook ( رایانه ها و حروفچینی ، جلد A). Reading, Massachusetts: Addison–Wesley, 1984. ISBN  0-201-13448-9 . کد منبع کتاب در TeX بایگانی شده در 2007-09-27 در Wayback Machine (و مجموعه ای از ماکروهای مورد نیاز CTAN.org ) به صورت آنلاین در CTAN موجود است .
  2. ^ رشته"\x1B[0m\x1B[25;1H"دنباله کاراکتر Esc [ 0 m Esc [ 2 5 ; 1 H Nul . اینها دنباله‌های فرار مورد استفاده در ترمینال ANSI هستند که مجموعه کاراکترها و رنگ‌ها را بازنشانی می‌کنند و سپس مکان‌نما را به خط 25 منتقل می‌کنند.
  3. «استاندارد یونیکد، نسخه 7» (PDF) . یونیکد . بایگانی شده (PDF) از نسخه اصلی در 03-03-2016 . بازیابی شده در 2018-10-28 .
  4. ^ "رنگ های وب هگزادسیمال توضیح داده شده است" . بایگانی شده از نسخه اصلی در 2006-04-22 . بازیابی شده در 2006-01-11 .
  5. «ISO-8859-1 (ISO Latin 1) Character Encoding» . www.ic.unicamp.br . بایگانی شده از نسخه اصلی در 2019-06-29 . بازیابی شده در 2019-06-26 .
  6. "مدول-2 - واژگان و بازنمایی" . مدول −2 . بایگانی شده از نسخه اصلی در 2015-12-13 . بازیابی 2015-11-01 .
  7. «مقدمه ای بر انواع داده های VHDL» . آموزش FPGA . 10-05-2020. بایگانی شده از نسخه اصلی در 2020-08-23 . بازیابی شده در 2020-08-21 .
  8. ^ "متغیر *read-base* در Common Lisp" . CLHS . بایگانی شده از نسخه اصلی در 2016-02-03 . بازیابی 2015-01-10 .
  9. ^ "متغیر *print-base* در Common Lisp" . CLHS . بایگانی شده از نسخه اصلی در 2014-12-26 . بازیابی 2015-01-10 .
  10. ^ MSX در راه است — قسمت 2: داخل MSX بایگانی شده در 2010-11-24 در Wayback Machine Compute! ، شماره 56، ژانویه 1985، ص. 52
  11. ^ برنامه های بی بی سی بی بی سی به طور کامل برای مایکروسافت بیسیک (بدون تغییر) قابل حمل نیستند، زیرا دومیمقادیر هشتگانه& را پیشوند(مایکروسافت بیسیک در درجه اول ازپیشوند اکتال استفاده می کند وبرای پیشوند هگزا دسیمال استفاده می کند، اما علامت علامت به تنهایی یک تعبیر پیش فرض را به عنوان پیشوند اکتال ارائه می دهد.&O&H
  12. ^ a b c d e f g Savard, John JG (2018) [2005]. "حساب کامپیوتری" . چهار بلوک . روزهای اولیه هگزادسیمال. بایگانی شده از نسخه اصلی در 2018-07-16 . بازیابی شده در 2018-07-16 .
  13. «2.1.3 نماد جنسیتی». راهنمای مرجع برنامه نویس G15D (PDF) . لس آنجلس، کالیفرنیا، ایالات متحده: کامپیوتر Bendix ، بخش Bendix Aviation Corporation . پ. 4. بایگانی شده (PDF) از نسخه اصلی در 2017-06-01 . بازیابی شده در 2017-06-01 . این پایه به این دلیل استفاده می شود که یک گروه چهار بیتی می تواند هر یک از شانزده عدد مختلف (صفر تا پانزده) را نشان دهد. با اختصاص یک نماد به هر یک از این ترکیب‌ها، به نمادی به نام sexadecimal می‌رسیم (معمولاً در مکالمه هگز می‌شود زیرا کسی نمی‌خواهد جنسیت را مخفف کند). نمادها در زبان جنسی ده رقمی ده رقم اعشاری و در ماشین تحریر G-15 حروف u، v، w، x، y و z هستند. اینها علامت گذاری های دلخواه هستند. کامپیوترهای دیگر ممکن است از حروف الفبای متفاوتی برای این شش رقم آخر استفاده کنند.
  14. ^ گیل، اس. Neagher، RE; مولر، دی. نش، جی پی؛ رابرتسون، جی. شاپین، تی. وسلر، دی جی (1956-09-01). نش، جی پی (ویرایش). "برنامه نویسی ILLIAC - راهنمای آماده سازی مسائل برای حل توسط کامپیوتر دیجیتال دانشگاه ایلینویز" (PDF) . bitsavers.org (چاپ چهارم. ویرایش اصلاح شده و تصحیح شده). اوربانا، ایلینوی، ایالات متحده آمریکا: آزمایشگاه کامپیوتر دیجیتال، کالج فارغ التحصیل، دانشگاه ایلینوی . صص 3-2. بایگانی شده (PDF) از نسخه اصلی در 2017-05-31 . بازیابی 2014-12-18 .
  15. ^ ROYAL PRECISION Electronic Computer LGP – 30 Programming Manual . پورت چستر، نیویورک: Royal McBee Corporation . آوریل 1957. بایگانی شده از نسخه اصلی در 2017-05-31 . بازیابی شده در 2017-05-31 .(نکته. این دنباله تا حدی عجیب از شش کد بعدی صفحه کلید عددی متوالی در کد کاراکترهای 6 بیتی LGP-30 بود.)
  16. ^ مانتی، استفن؛ لیبراند، کلاوس (2002-07-02). "Die PERM und ALGOL" (PDF) (به آلمانی) . بازیابی شده در 2018-05-19 .
  17. ^ نوع کامپیوتر دیجیتال NEC Parametron NEAC-1103 (PDF) . توکیو، ژاپن: Nippon Electric Company Ltd. 1960. Cat. شماره 3405-C. بایگانی شده (PDF) از نسخه اصلی در 2017-05-31 . بازیابی شده در 2017-05-31 .
  18. ^ a b c مارتین، بروس آلن (اکتبر 1968). "نامه هایی به ویرایشگر: در نماد دودویی". ارتباطات ACM . Associated Universities Inc. 11 (10): 658. doi : 10.1145/364096.364107 . S2CID 28248410 .  
  19. «کپی بایگانی شده» . بایگانی شده (PDF) از نسخه اصلی در 2021-10-20 . بازیابی شده در 2021-09-15 . {{cite web}}: CS1 maint: کپی بایگانی شده به عنوان عنوان ( پیوند )
  20. ^ a b c Magnuson, Robert A. (ژانويه 1968). "راهنمای تلفظ هگزادسیمال". داده سازی . جلد 14، شماره 1. ص. 45.
  21. باب، تیم (2015). "چگونه هگزادسیمال را تلفظ کنیم" . بزرگ . بایگانی شده از نسخه اصلی در 2020-11-11 . بازیابی شده در 2021-01-01 .
  22. ^ a b راجرز، اس آر (2007). "کلمات عدد هگزادسیمال" . شهود . بایگانی شده از نسخه اصلی در 2019-09-17 . بازیابی شده در 2019-08-26 .
  23. ^ کلارک، آرتور؛ پول، فردریک (2008). آخرین قضیه . بالنتین. پ. 91 . شابک 978-0007289981.
  24. «ISO/IEC 9899:1999 – زبان های برنامه نویسی – C» . ISO _ Iso.org 08-12-2011. بایگانی شده از نسخه اصلی در 2016-10-10 . بازیابی شده در 2014-04-08 .
  25. «دلیل استانداردهای بین المللی – زبان های برنامه نویسی – C» (PDF) . استانداردهای باز 5.10. آوریل 2003. صفحات 52، 153-154، 159. بایگانی شده (PDF) از نسخه اصلی در 2016-06-06 . بازیابی 2010-10-17 .
  26. IEEE و گروه باز (2013) [2001]. "dprintf، fprintf، printf، snprintf، sprintf – خروجی فرمت شده چاپ" . مشخصات پایه گروه باز (نسخه 7، IEEE Std 1003.1، 2013 ed.). بایگانی شده از نسخه اصلی در 2016-06-21 . بازیابی شده در 2016-06-21 .
  27. ^ a b Mano، M. Morris; سیلتی، مایکل دی (2013). طراحی دیجیتال - با مقدمه ای بر Verilog HDL (ویرایش پنجم). آموزش پیرسون ص 6، 8-10. شابک 978-0-13-277420-8.
  28. «جمع و تفریق هگزادسیمال در چرتکه چینی» . totton.idirect.com . بایگانی شده از نسخه اصلی در 2019-07-06 . بازیابی شده در 2019-06-26 .
  29. «پیشنهاد نماد هگزادسیمال پایه 4^2» . Hauptmech . بایگانی شده از نسخه اصلی در 2021-10-20 . بازیابی شده در 2008-09-04 .
  30. «دفتر مرکزی Intuitor Hex» . شهود . بایگانی شده از نسخه اصلی در 04/09/2010 . بازیابی شده در 2018-10-28 .
  31. نیمیتز، ریکاردو کانچو (۲۱-۱۰-۲۰۰۳). "پیشنهادی برای افزودن شش رقم هگزادسیمال (AF) به یونیکد" . استانداردسازی DKUUG بایگانی شده از نسخه اصلی در 2011-06-04 . بازیابی شده در 2018-10-28 .
  32. نیستروم، جان ویلیام (1862). پروژه یک سیستم جدید از حساب، وزن، اندازه و سکه: پیشنهاد شده است به نام سیستم آهنگی، با شانزده به پایه . فیلادلفیا: لیپینکات.
  33. نیستروم (1862)، ص. 33: «در بیان زمان، زاویه یک دایره یا نقاط روی قطب نما، واحد tim را باید به صورت عدد صحیح و قسمت هایی از آن را به صورت کسری آهنگی در نظر گرفت ، زیرا 5·86 tims پنج برابر است و متونبی [*"sutim و metonby. "جان نیستروم به طور تصادفی بخشی از عدد را در نام های اعشاری می دهد؛ در طرح تلفظ نایستروم، 5=su، 8=me، 6=by، cf unifoundry.com ذخیره شده 19/05/2021 در ماشین راه برگشت ]."
  34. ^ CE فروبرگ، جداول تبدیل هگزا دسیمال ، لوند (1952).
  35. فرهنگ لغت قرن 1895 بهمعنای عام تر «مرتبط با شانزده» ، دارای هنجارهای جنسی است. استفاده صریح اولیه از sexadecimal به معنای "استفاده از پایه 16" نیز در سال 1895، در مجله American Geographical Society of New York، جلدهای. 27-28، ص. 197.
  36. ^ شوارتزمن، اس. (1994). واژه‌های ریاضیات: فرهنگ لغت ریشه‌شناسی اصطلاحات ریاضی که در انگلیسی استفاده می‌شود . شابک 0-88385-511-9 . 
  37. ^ کنوت، دونالد. (1969). هنر برنامه نویسی کامپیوتر جلد 2 . شابک 0-201-03802-1 . (فصل 17.) 
  38. آلفرد بی. تیلور، گزارش در مورد وزن ها و اندازه ها، انجمن داروسازی، جلسه سالانه هشتم، بوستون، 15 سپتامبر 1859. به صفحات و 33 و 41 مراجعه کنید.
  39. آلفرد ب. تیلور، "شمارش اکتونی و کاربرد آن در سیستم وزن ها و اندازه ها"، Proc Amer. فیل. Soc. جلد XXIV بایگانی شده 2016-06-24 در Wayback Machine , Philadelphia, 1887; صفحات 296-366. به صفحات 317 و 322 مراجعه کنید.
  40. IBM System/360 FORTRAN IV Language بایگانی شده در ۱۹-۰۵-۲۰۲۱ در ماشین راه‌اندازی (۱۹۶۶)، ص. 13.