stringtranslate.com

Клев

Таблица шрифтов октетной кодовой страницы 866, упорядоченная по полубайтам.

В вычислениях полубайт [1] (иногда nybble , nyble или nybl, чтобы соответствовать написанию byte ) представляет собой четырехбитную агрегацию , [1] [2] [3] или половину октета . Он также известен как полубайтовый [4] или тетрадный . [5] [6] В сетевом или телекоммуникационном контексте полубайт часто называют полуоктетом , [ 7] квабитом , [8] или квартетом . [9] [10] Полубайт имеет шестнадцать ( 2 4 ) возможных значений. Полубайт может быть представлен одной шестнадцатеричной цифрой ( - ) и называется шестнадцатеричной цифрой . [11] 0F

Полный байт (октет) представлен двумя шестнадцатеричными цифрами ( 00FF); поэтому обычно байт информации отображается в виде двух полубайтов. Иногда набор всех 256 -байтовых значений представляется в виде таблицы 16×16 , которая дает легко читаемые шестнадцатеричные коды для каждого значения.

Четырехбитные компьютерные архитектуры используют группы по четыре бита в качестве основной единицы. Такая архитектура использовалась в первых микропроцессорах , карманных калькуляторах и карманных компьютерах . Они продолжают использоваться в некоторых микроконтроллерах . В этом контексте 4-битные группы иногда также называли символами [12] , а не полубайтами. [1]

История

Термин «ниббл» происходит от обозначения «половины байта», причем байт является омофоном английского слова « укус » . [4] В 2014 году Дэвид Б. Бенсон, почетный профессор Университета штата Вашингтон , вспомнил, что он в шутку использовал (и, возможно, придумал) термин полубайт как «полбайта» и единицу хранения, необходимую для хранения двоичных данных . закодированная десятичная цифра (BCD) примерно в 1958 году во время разговора с программистом Лос-Аламосской научной лаборатории . Альтернативное написание nybble отражает написание byte , как отмечалось в редакционных статьях Kilobaud и Byte в начале 1980-х годов. Еще одно раннее зарегистрированное использование термина « ниббл» произошло в 1977 году в группе технологий потребительского банкинга в Ситибанке. Он создал стандарт до ISO 8583 для транзакционных сообщений между банкоматами и центрами обработки данных Ситибанка , который использовал базовую информационную единицу «NABBLE».

Полубайт используется для описания объема памяти, используемой для хранения цифры числа, хранящегося в упакованном десятичном формате (BCD) в мэйнфрейме IBM. Этот метод используется для ускорения вычислений и упрощения отладки. 8-битный байт делится пополам, и каждый полубайт используется для хранения одной десятичной цифры. Последний (самый правый) полубайт переменной зарезервирован для знака. Таким образом, переменная, которая может хранить до девяти цифр, будет «упакована» в 5 байт. Простота отладки обусловлена ​​тем, что числа можно прочитать в шестнадцатеричном дампе , где два шестнадцатеричных числа используются для представления значения байта, например 16×16 = 2 8 . Например, пятибайтовое значение BCD 31 41 59 26 5Cпредставляет десятичное значение +314159265.

Исторически были случаи, когда полубайт использовался для группы битов больше 4. В линейке микрокомпьютеров Apple II большая часть управления дисководом и записи с групповым кодированием была реализована программно. Запись данных на диск осуществлялась путем преобразования 256-байтовых страниц в наборы 5-битных (позже 6-битных ) полубайтов, а загрузка данных с диска требовала обратного. [13] [14] [15] Более того, в документации 1982 года по интегрированной машине Воза постоянно упоминается «8-битный полубайт». [16] Термин « байт» когда-то имел такую ​​же двусмысленность и означал набор битов, но не обязательно 8, отсюда и различие между байтами и октетами или полубайтами и квартетами (или квадбитами ). Сегодня термины «байт» и «полубайт» почти всегда относятся к 8-битным и 4-битным коллекциям соответственно и очень редко используются для обозначения каких-либо других размеров.

Шестнадцатеричное представление

Полубайт можно представить в шестнадцатеричном формате следующим образом:

Низкие и высокие поклевки

Термины «младший полубайт» и «высокий полубайт» используются для обозначения полубайтов, содержащих соответственно менее значимые биты и более значимые биты в байте. В графическом представлении битов внутри байта самый левый бит может представлять собой старший бит ( MSB ), что соответствует обычной десятичной записи, в которой цифра слева от числа является наиболее значимой. На таких иллюстрациях четыре бита в левом конце байта образуют старший полубайт, а оставшиеся четыре бита — младший полубайт. [17] Например,

девяносто семь = 97 10 = (0110 0001) 2 = 61 шестнадцатеричный

старший полубайт — 0110 2 ( 6 шестнадцатеричный ), а младший — 0001 2 ( 1 шестнадцатеричный ). Общее значение равно старшему полубайту × 16 10 + младшему полубайту ( 6 × 16 + 1 = 97 10 ).

Извлечение полубайта из байта

Полубайт можно извлечь из байта, выполнив поразрядную логическую операцию И и, при необходимости, сдвиг битов в зависимости от того, должен быть извлечен старший или младший полубайт.

В С :

#define HI_NIBBLE(b) (((b) >> 4) & 0x0F) #define LO_NIBBLE(b) ((b) & 0x0F)

где bдолжна быть переменная или константа целочисленного типа данныхb , и используется только младший байт .

Например, HI_NIBBLE(0xAB)==0xAи LO_NIBBLE(0xAB)==0xB.

В Общем Лиспе :

( defun hi-nibble ( b ) ( ldb ( byte 4 4 ​​) b )) ( defun lo-nibble ( b ) ( ldb ( byte 4 0 ) b ))              

Смотрите также

Рекомендации

  1. ^ abc Рафаэль, Ховард А., изд. (ноябрь 1974 г.). «Функции компьютера: регистр инструкций и декодер» (PDF) . Руководство пользователя MCS-40 для разработчиков логики . Санта-Клара, Калифорния, США: Корпорация Intel . п. viii. Архивировано (PDF) из оригинала 03 марта 2020 г. Проверено 3 марта 2020 г. [...] Характеристическое восьмибитное поле иногда называют байтом , четырехбитное поле можно назвать полубайтом. [...]
  2. ^ Холл, Дуглас В. (1980). Микропроцессоры и цифровые системы . МакГроу-Хилл . ISBN 0-07-025571-7.
  3. ^ Уоррен младший, Генри С. (2013) [2002]. Хакерское наслаждение (2-е изд.). Аддисон Уэсли - ISBN Pearson Education, Inc.  978-0-321-84268-8. 0-321-84268-5.
  4. ^ аб Раймонд, Эрик С. (1996). Новый словарь хакера. МТИ Пресс . п. 333. ИСБН 978-0-262-68092-9.
  5. ^ Карр, Джон В. Введение в использование цифровых компьютеров: заметки с летней конференции, состоявшейся в Вычислительном центре Университета Северной Каролины, Чапел-Хилл, Северная Каролина, 17-28 августа 1959 г. Передовые исследования цифровых компьютеров. Том. 1. Университет Северной Каролины в Чапел-Хилл, Вычислительный центр. п. 211. Каждая из этих букв соответствует одному из целых чисел от нуля до пятнадцати, поэтому в двоичном представлении требуется 4 бита (одна «тетрада»).
  6. ^ Спейзер, Амброзиус Пол (1965) [1961]. Digitale Rechenanlagen - Grundlagen / Schaltungstechnik / Arbeitsweise / Betriebssicherheit [ Цифровые компьютеры - Основы / Схемы / Эксплуатация / Надежность ] (на немецком языке) (2-е изд.). ETH Zürich , Цюрих, Швейцария: Springer-Verlag / IBM . стр. 6, 34, 165, 183, 208, 213, 215. LCCN  65-14624. 0978.
  7. ^ Пузман, Йозеф; Кубин, Борис (2012). Сети передачи данных общего пользования: от отдельных PDN к ISDN. Springer Science+Business Media . п. 113. ИСБН 978-1-4471-1737-7.
  8. ^ Хорак, Рэй (2007). Словарь Вебстера New World Telecom. Джон Уайли и сыновья . п. 402. ИСБН 978-0-470-22571-4.
  9. ^ Брюстер, Рональд Л. (1994). Передача данных и сети, Vol. III. Телекоммуникационная серия IEE. Том. 31. Институт инженеров-электриков . п. 155. ИСБН 978-0-85296-804-8. Символ данных представляет собой один квартет (4 бита) двоичных данных.
  10. ^ Курбис, Поль ; Лаланд, Себастьен (27 июня 2006 г.) [1989]. Voyage au center de la HP28c/s (на французском языке) (2-е изд.). Париж, Франция: Editions de la Règle à Calcul. OCLC  636072913. Архивировано из оригинала 6 августа 2016 г. Проверено 6 сентября 2015 г.[1] [2] [3] [4] [5] [6]
  11. ^ Хеллер, Стив (1997). Введение в С++. Морган Кауфманн . п. 27. ISBN 978-0-12-339099-8. Каждая шестнадцатеричная цифра (0–f) представляет ровно 4 бита.
  12. ^ «Термины и сокращения» (PDF) . Руководство по программированию на языке ассемблера MCS-4 — Руководство по программированию микрокомпьютерной системы INTELLEC 4 (предварительное издание). Санта-Клара, Калифорния, США: Корпорация Intel . Декабрь 1973 г. стр. v, 2–6. MCS-030-1273-1. Архивировано (PDF) из оригинала 01 марта 2020 г. Проверено 02 марта 2020 г. [...] Бит - наименьшая единица информации, которая может быть представлена. (Бит может находиться в одном из двух состояний: 0 или 1). [...] Байт — группа из 8 последовательных битов, занимающих одну ячейку памяти. [...] Символ — группа из 4 последовательных битов данных. [...](Примечание. В этом руководстве для Intel 4004 термин « символ» используется для обозначения 4-битных, а не 8-битных объектов данных . Intel перешла на использование более распространенного термина « полубайт» для 4-битных объектов в своей документации для последующего процессора 4040 уже в 1974 году. )
  13. ^ Стоит, Дон Д.; Лехнер, Питер М. (май 1982 г.) [1981]. Под Apple DOS (4-е издание, 1-е изд.). Резеда, Калифорния, США: Качественное программное обеспечение . Проверено 21 марта 2017 г.[7][8][9] Архивировано 9 марта 2016 г. в Wayback Machine.
  14. ^ Стоит, Дон Д.; Лехнер, Питер М. (март 1985 г.) [1984]. Под Apple ProDOS — для пользователей компьютеров Apple II Plus, Apple IIe и Apple IIc (PDF) (2-е издание, 1-е изд.). Чатсворт, Калифорния, США: Качественное программное обеспечение . ISBN 0-912985-05-4. LCCN  84-61383. Архивировано (PDF) из оригинала 21 марта 2017 г. Проверено 21 марта 2017 г.[10]
  15. ^ Copy II Plus, версия 9 — Утилиты ProDOS/DOS — Восстановление данных, управление файлами, резервное копирование защищенного программного обеспечения (PDF) . 9.0. Central Point Software, Inc., 31 октября 1989 г. [1982]. Архивировано из оригинала (PDF) 7 мая 2017 г. Проверено 21 марта 2017 г.
  16. ^ Apple Computer, Inc. (февраль 1982 г.) [1978]. Спецификация Integrated Woz Machine (IWM) (PDF) (19-е изд.). Компьютерный музей DigiBarn. Архивировано (PDF) из оригинала 6 августа 2016 г. Проверено 06 августа 2016 г.
  17. ^ Баккала, Брент (апрель 1997 г.). «Двоичная арифметика». Связано: Интернет-энциклопедия (3-е изд.). Архивировано из оригинала 6 августа 2016 г. Проверено 20 июля 2015 г.

Внешние ссылки