Подтвердить что ты не робот

Почему у байта только от 0 до 255?

Почему байт находится в диапазоне от 0 до 255?

4b9b3361

Ответ 1

Строго говоря, термин "байт" может действительно ссылаться на единицу, отличную от 256 значений. Это просто то, что почти универсальный размер. Из Wikipedia:

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

Размер байта исторически зависит от оборудования и нет существуют определенные стандарты, которые размер мандата. Фактически Стандарт восьми бит - удобный мощность двух разрешающих значений 0 через 255 для одного байта. Много типов приложений используют переменные представляемый в восьми или менее битах, и дизайнеры процессоров оптимизируют для это обычное использование. Популярность основные коммерческие вычисления архитектуры помогли вездесущее принятие 8-битного размер. Термин октет был определен как явно обозначают последовательность из 8 бит из-за связанной неоднозначности с байтом.

По иронии судьбы, в наши дни размер "одного символа" больше не считается одним байтом в большинстве случаев... чаще всего идея "символа" связана с Unicode, где символы могут быть представлены в количество различных форматов, но обычно это 16 бит или 32.

Было бы забавно для системы, которая использовала UCS-4/UTF-32 (прямое 32-разрядное представление Unicode), чтобы назначить 32 бита в качестве байта. Возникающая путаница будет впечатляющей.

Однако, полагая, что мы берем "байт" как синоним "октета", существует восемь независимых бит, каждый из которых может быть как включенным, так и выключенным, истинным или false, 1 или 0, однако вы хотите подумать об этом. Это приводит к 256 возможным значениям, которые обычно нумеруются от 0 до 255. (Это не всегда так. Например, разработчики Java, к сожалению, решили обрабатывать байты как знаковые целые числа в диапазоне от -128 до 127.)

Ответ 2

Байт ≠ Октет

Почему байт находится в диапазоне от 0 до 255?

Это не так.

Октет имеет 8 бит, что позволяет использовать 2 8. Байт не определен. Нельзя приравнивать два термина, поскольку они не являются полностью взаимозаменяемыми. Кроме того, злые языки программирования, которые поддерживают только подписанные символы (ʏᴏᴜ ᴋɴᴏw ᴡʜᴏ ʏᴏᴜ ᴀʀᴇ!), Могут представлять только значения от -128 до 127, а не от 0 до 255.

Big Iron долгое время ржавеет.

Большинство, но не все современные машины имеют 8-битные байты, но это относительно недавнее явление. Конечно, это не всегда так. Многие очень ранние компьютеры имели 4-битные байты, а 6-битные байты были когда-то распространены даже сравнительно недавно. Оба этих типа байтов содержат меньше значений, чем 255.

Эти 6-битные байты могут быть весьма удобными, поскольку с размером слова в 36 бит шесть таких байтов вписываются в одно из этих 36-битных слов без какого-либо смещения. Это сделано, если очень полезно для хранения Fieldata, используемого очень популярным Sperry ᴜɴɪᴠᴀᴄ. Вы можете поместить только 4 символа в 36-битное слово, а не 6 Fieldata. У нас было 1100 серий в вычислительном центре, когда я был студентом, но это остается верным даже с современными сериями 2200.

Введите ASCII

ᴀsᴄɪɪ - и только 7- не 8-битный код - проложил путь для выхода из этого мира. Важность ɪʙᴍ 360, которая имела 8-битные байты, независимо от того, были ли они сохранены ᴀsᴄɪɪ или нет, не должна быть занижена.

Тем не менее, многие машины долгое время поддерживали ᴅᴇᴄs Radix-50. Это был 40-символьный репертуар, в котором три его персонажа могут быть эффективно упакованы в один 16-битный слова под двумя различными схемами кодирования. Я использовал множество ᴅᴇᴄ ᴘᴅᴘ-11 и Vaxen во время моих университетских дней, а Rad-50 был просто фактом жизни, реальностью, которую нужно было разместить.

Ответ 3

Поскольку byte по стандарту определяет 8 бит, которые могут представлять 256 значений (от 0 до 255).

Ответ 4

Вы ошибаетесь! Байт находится в диапазоне от 0 до 63 или от 0 до 99!

Вы верите в Бог? Бог сказал в Святой Библии.

Базовая единица информации - это байт. Каждый байт содержит неопределенный объем информации, но он должен содержать не менее 64 различных значений. То есть мы знаем, что любое число от 0 до 63 включительно может содержаться в одном байте. Кроме того, каждый байт содержит не более 100 различных значений. Поэтому на двоичном компьютере байт должен состоять из шести бит; на десятичном компьютере у нас есть две цифры на каждый байт. *     - Искусство компьютерного программирования, Том 1, написанный Дональдом Кнутом.

А...

* С 1975 года слово "байт" стало означать последовательность из восьми цифр двоичного кода, способных представлять числа от 0 до 255. Таким образом, байты реального мира больше, чем байты гипотетической машины MIX; действительно, байты старого стиля MIX чуть больше, чем nybbles. Когда мы говорим о байтах в связи с MIX, мы ограничимся прежним смыслом слова, возвращаясь к тем временам, когда байты еще не были стандартизированы.     - Искусство компьютерного программирования, Том 1, написанный Дональдом Кнутом.

: -)

Ответ 5

Байт имеет только 8 бит. Бит - двоичная цифра. Таким образом, байт может содержать 2 (двоичных) ^ 8 чисел от 0 до 2 ^ 8-1 = 255.

Это то же самое, что и спрашивать, почему трехзначное десятичное число может представлять значения от 0 до 999, на которые отвечает тот же самый способ (10 ^ 3 - 1).

Первоначально байты не всегда были 8 бит. Они представляли "пару" бит, которые также могли быть 6, 7 или 9 бит. Это было позже стандартизировано, и имело смысл сделать эти единицы сильными из-за двоичной природы компьютеризации. Отсюда и начался полубайт (4 бита, или половина байта) и 8-битный байт.

[править] Именно поэтому восьмеричная и шестнадцатеричная нумерация стали популярными. Одно восьмеричное число представляет 3 бита, а одно шестнадцатеричное число - 4 бита. Таким образом, шестнадцатеричное число в цифре может представлять собой один байт. Имеет смысл иметь число от 0 до 0xFF, чем от 0 до 255.:

Ответ 6

Отмечу, что на компьютерах серии PDP-10 байт был конструкцией переменной длины, определяемой "указателем байта", который определял количество бит, а также смещение от начала хранилища площадь. Затем был задан набор машинных инструкций для работы с указателем байтов, в том числе:

  • LDB - Байт загрузки
  • DPB - Депозитный байт
  • ILDB - указатель увеличения, затем байт загрузки
  • IDPB - указатель приращения, затем депозитный байт (надеюсь, что я получил это правильно - он не чувствует себя хорошо).

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

Некоторые из используемых наборов символов были "шестибитными" (только в верхнем регистре, шесть байт для 36-битного слова), ASCII (верхний и нижний регистр, пять байтов для слова, с немного оставшимся), и только редко EBCDIC (набор символов IBM, который использовал четыре восьмибитовых байта на слово, расточительно оставляя четыре бита на одно слово неиспользованным).

Ответ 7

Строго говоря, это не так.

В большинстве современных систем байтом является 8 двоичных битов, но в некоторых системах это не всегда так (многие старые компьютеры использовали 7 бит для представления символов ASCII (aka bytes), а перфокартные системы часто были основаны на 6- битные символы (например, байты), например).

Если вы говорите о 8-битном байте, это может представлять любой диапазон, который вы хотите. Однако он может представлять только 256 различных значений, поэтому он обычно используется для представления 0..255 ( "unsigned byte" ) или -128.. + 127 ( "подписанный байт" ).

Ответ 8

Байт имеет 8 бит (8 1 или 0) 01000111 = 71

каждый бит представляет значение, 1,2,4,8,16,32,64,128, но справа налево?

Пример

128, 64, 32, 16, 8, 4, 2, 1,
0    1   0   0   0  1  1  1 =71
1    1   1   1   1  1  1  1 = max 255
0    0   0   0   0  0  0  0 = min 0

используя двоичный 1 или 0 и только 8 бит (1 байт), мы можем иметь только

1 каждого значения 1 X 128, 1 X 64,1 X 32 и т.д., давая максимум 255 и min 0