Клев
Эта статья нуждается в дополнительных цитатах для проверки . ( апрель 2015 г. ) |
В вычислительной кусочек технике [1] (иногда nybble , nyble или nybl , чтобы соответствовать написанию byte ) — это четырехбитная агрегация , [1] [2] [3] или половина октета . Он также известен как полубайтовый [4] или тетрада . [5] [6] В сетевом или телекоммуникационном контексте полубайт часто называют полуоктетом . [7] квадбит , [8] или квартет . [9] [10] В одном клеве шестнадцать ( 2 4 ) возможные значения. Полубайт может быть представлен одной шестнадцатеричной цифрой ( 0
– F
) и называется шестнадцатеричной цифрой . [11]
Полный байт (октет) представлен двумя шестнадцатеричными цифрами ( 00
– FF
); поэтому обычно байт информации отображается в виде двух полубайтов. Иногда набор всех 256 -байтовых значений представляется в виде таблицы 16×16 , которая дает легко читаемые шестнадцатеричные коды для каждого значения.
Четырехбитные компьютерные архитектуры используют группы по четыре бита в качестве основной единицы. Такая архитектура использовалась в ранних микропроцессорах , карманных калькуляторах и карманных компьютерах . Они продолжают использоваться в некоторых микроконтроллерах . В этом контексте 4-битные группы иногда также называли символами. [12] а не грызть. [1]
История
[ редактировать ]Термин «ниббл» происходит от обозначения «половины байта», причем байт английского является омофоном слова укус « » . [4] В 2014 году Дэвид Б. Бенсон, почетный профессор Университета штата Вашингтон , вспомнил, что он в шутку использовал (и, возможно, придумал) термин полубайт как «полбайта» и единицу хранения, необходимую для хранения двоично-десятичного числа ( BCD) цифра примерно в 1958 году, при разговоре с программистом из Лос-Аламосской научной лаборатории . Альтернативное написание nybble отражает написание byte , как отмечалось в редакционных статьях Kilobaud и Byte в начале 1980-х годов. Еще одно раннее зарегистрированное использование термина «ниббл» произошло в 1977 году в группе технологий потребительского банкинга в Ситибанке. Он создал стандарт до ISO 8583 для транзакционных сообщений между банкоматами Ситибанка и центрами обработки данных , в котором использовался базовый блок данных «nabble».
Nibble используется для описания объема памяти, используемой для хранения цифры числа, хранящегося в упакованном десятичном формате (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 года для Integrated Woz Machine постоянно упоминается «8-битный полубайт». [16] Термин «байт» когда-то имел такую же двусмысленность и означал набор битов, но не обязательно 8, отсюда и различие между байтами и октетами или полубайтами и квартетами (или квадбитами ). Сегодня термины «байт» и «полубайт» почти всегда относятся к 8-битным и 4-битным коллекциям соответственно и очень редко используются для обозначения каких-либо других размеров.
Двоичное и шестнадцатеричное представление
[ редактировать ]Полубайт может быть представлен в двоичном и шестнадцатеричном виде следующим образом:
Двоичный | Десятичный | Шестнадцатеричный |
---|---|---|
0000 | 0 | 0 |
0001 | 1 | 1 |
0010 | 2 | 2 |
0011 | 3 | 3 |
0100 | 4 | 4 |
0101 | 5 | 5 |
0110 | 6 | 6 |
0111 | 7 | 7 |
1000 | 8 | 8 |
1001 | 9 | 9 |
1010 | 10 | А |
1011 | 11 | Б |
1100 | 12 | С |
1101 | 13 | Д |
1110 | 14 | И |
1111 | 15 | Ф |
Низкие и высокие поклевки
[ редактировать ]Термины «младший полубайт» и «высокий полубайт» используются для обозначения полубайтов, содержащих соответственно менее значимые биты и более значимые биты в байте. В графическом представлении битов внутри байта самый левый бит может представлять собой старший бит ( 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))
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: Перейти обратно: а б с Рафаэль, Ховард А., изд. (ноябрь 1974 г.). «Функции компьютера: регистр инструкций и декодер» (PDF) . Руководство пользователя MCS-40 для разработчиков логики . Санта-Клара, Калифорния, США: Корпорация Intel . п. viii. Архивировано (PDF) из оригинала 03 марта 2020 г. Проверено 3 марта 2020 г.
[...] Характеристическое восьмибитное поле иногда называют байтом , четырехбитное поле можно назвать полубайтом. [...]
- ^ Холл, Дуглас В. (1980). Микропроцессоры и цифровые системы . МакГроу-Хилл . ISBN 0-07-025571-7 .
- ^ Уоррен-младший, Генри С. (2013) [2002]. Хакерское наслаждение (2-е изд.). Аддисон Уэсли – Pearson Education, Inc. ISBN 978-0-321-84268-8 . 0-321-84268-5.
- ^ Jump up to: Перейти обратно: а б Раймонд, Эрик С. (1996). Новый словарь хакера . МТИ Пресс . п. 333. ИСБН 978-0-262-68092-9 .
- ^ Карр, Джон В. Введение в использование цифровых компьютеров: заметки с летней конференции, состоявшейся в Вычислительном центре Университета Северной Каролины, Чапел-Хилл, Северная Каролина, 17-28 августа 1959 г. Передовые исследования цифровых компьютеров. Том. 1. Университет Северной Каролины в Чапел-Хилл, Вычислительный центр. п. 211.
Каждая из этих букв соответствует одному из целых чисел от нуля до пятнадцати, поэтому в двоичном представлении требуется 4 бита (одна «тетрада»).
- ^ Шпайзер, Амброзиус Пол (1965) [1961]. Цифровые компьютеры - Основы / Схемотехника / Как они работают / Эксплуатационная безопасность [ Цифровые компьютеры - Основы / Схемы / Эксплуатация / Надежность ] (на немецком языке) (2-е изд.). ETH Zurich , Цюрих, Швейцария: Springer-Verlag / IBM . стр. 6, 34, 165, 183, 208, 213, 215. LCCN 65-14624 . 0978.
- ^ Пузман, Йозеф; Кубин, Борис (2012). Сети передачи данных общего пользования: от отдельных PDN к ISDN . Springer Science+Business Media . п. 113. ИСБН 978-1-4471-1737-7 .
- ^ Хорак, Рэй (2007). Словарь Вебстера New World Telecom . Джон Уайли и сыновья . п. 402. ИСБН 978-0-470-22571-4 .
- ^ Брюстер, Рональд Л. (1994). Передача данных и сети, Vol. III . Телекоммуникационная серия IEE. Том. 31. Институт инженеров-электриков . п. 155. ИСБН 978-0-85296-804-8 .
Символ данных представляет собой один квартет (4 бита) двоичных данных.
- ^ Курбис, Поль ; Лаланд, Себастьян (27 июня 2006 г.) [1989]. Путешествие в центр HP28c/s (на французском языке) (2-е изд.). Париж, Франция: Editions de la Règle à Calculation. OCLC 636072913 . Архивировано из оригинала 6 августа 2016 г. Проверено 6 сентября 2015 г. [1] [2] [3] [4] [5] [6]
- ^ Хеллер, Стив (1997). Введение в С++ . Морган Кауфманн . п. 27. ISBN 978-0-12-339099-8 .
Каждая шестнадцатеричная цифра (0–f) представляет ровно 4 бита.
- ^ «Термины и сокращения» (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 году.) - ^ Стоит, Дон Д.; Лехнер, Питер М. (май 1982 г.) [1981]. Под Apple DOS (4-е издание, 1-е изд.). Резеда, Калифорния, США: Качественное программное обеспечение . Проверено 21 марта 2017 г. [7] [8] [9] Архивировано 9 марта 2016 г. в Wayback Machine.
- ^ Стоит, Дон Д.; Лехнер, Питер М. (март 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]
- ^ Copy II Plus Версия 9 — Утилиты ProDOS/DOS — Восстановление данных, управление файлами, резервное копирование защищенного программного обеспечения (PDF) . 9.0. Central Point Software, Inc. , 31 октября 1989 г. [1982]. Архивировано из оригинала (PDF) 7 мая 2017 г. Проверено 21 марта 2017 г.
- ^ Apple Computer, Inc. (февраль 1982 г.) [1978 г.]. Спецификация Integrated Woz Machine (IWM) (PDF) (19-е изд.). Компьютерный музей DigiBarn. Архивировано (PDF) из оригинала 6 августа 2016 г. Проверено 06 августа 2016 г.
- ^ Баккала, Брент (апрель 1997 г.). «Двоичная арифметика» . Связано: Интернет-энциклопедия (3-е изд.). Архивировано из оригинала 6 августа 2016 г. Проверено 20 июля 2015 г.
Внешние ссылки
[ редактировать ]- «Конвейер сборки яблок» . Май 1981 года.