Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
Тут один хороший человек прислал мне на это вот:
"Как Билл Гейтс придумал информацию байтами мерять.
Когда Билл Гейтс занимался отладкой своих первых программ, его очень
раздражало, что он постоянно путался где у него какой бит стоит. И тогда
придумал он объединять их в группы по 8 бит, чтоб меньше ошибаться. И
назвал эти группы байтами. А когда его спросили почему он байты по 8 бит
сделал, а не по 10 — ведь удобнее же десятками считать — он сказал, что
наооборот — когда в байте 8 бит, то удобнее, ведь когда биты в байте
считаешь, пальцы загибать приходится, а так еще два пальца остаются,
чтоб по клавишам нажимать. Вот с той поры и повелось байты по 8 бит
делать."
Но сильно тянет на прикол. Нет, действительно! Почему?
08.06.03 11:19: Перенесено модератором из 'Низкоуровневое программирование' в Философию — ХД
Re: Фундаментальный вопрос :)
От:
Аноним
Дата:
23.10.02 11:38
Оценка:
...
пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь
...
Yesli najdesh celochislennij dvoichnij logarifm iz 10 — to mozhet i
peresmotryat standarty, chtob legche schitalos.
Здравствуйте Аноним, Вы писали:
А>... А>пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь А>...
А>Yesli najdesh celochislennij dvoichnij logarifm iz 10 — to mozhet i А>peresmotryat standarty, chtob legche schitalos.
А>p.s. sorry za translit
Спасибо за ответ — понятно что преобразования при условии что в байте 8 бит легче между шестнадцатиричной и двоичной системой. Но вот почему ИЗНАЧАЛЬНО в байт заложили 8 бит. Или я просто не понимаю чего-то очень простого и очевидного. При чем тут логарифм? Понятно что 4 бита (тетраду) очень удобно представлять одной цифрой 1111b -> Fh Как альернативу можно смотреть и восьмиричную систему но цифр получается больше и неудобно. А следующая альтернатива 256ричная система — где же столько символов набрать то! Может изначально это было связано с аппаратными ограничениями?
И еще вопрос — а почему биты в байтах считаются в обратном порядке (т.е. справа налево). Только не надо подкаловать что все это арабскими террористами было изначально придумано (хотя похоже конечно)
T>Спасибо за ответ — понятно что преобразования при условии что в байте 8 бит легче между шестнадцатиричной и двоичной системой. Но вот почему ИЗНАЧАЛЬНО в байт заложили 8 бит. Или я просто не понимаю чего-то очень простого и очевидного. При чем тут логарифм? Понятно что 4 бита (тетраду) очень удобно представлять одной цифрой 1111b -> Fh Как альернативу можно смотреть и восьмиричную систему но цифр получается больше и неудобно. А следующая альтернатива 256ричная система — где же столько символов набрать то! Может изначально это было связано с аппаратными ограничениями?
T>И еще вопрос — а почему биты в байтах считаются в обратном порядке (т.е. справа налево). Только не надо подкаловать что все это арабскими террористами было изначально придумано (хотя похоже конечно)
Т.к. в компутерах система счисления двоичная, то по 8 бит считать удобнее.(а не по десять)
Почему не сразу 16 — дык технология не на том уровне была, чтобы делать 16 разрядные системы.
А 8 вобщем-то хоть куда — и диапазон -128 +127 (0..255), т.е. привычная десятиричная цифра 100 умещается,
да и BCD соорудить можно на раз.
А справа налево считаются разряды — и это нормально. Ты же в десятиричной системе так же считаешь...
смотри: 1234
4 — младший разряд или нулевой
...
1 — старший разряд, тут он третий
Здравствуйте Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
Хотя, думаю, тут ещё и аппаратные соображения играют существенную роль. Например, для адресации любого из 8-ми бит достаточно трёх бит (регистров — три микросхемы в далёкие времена), если бы было 10 бит, то надо уже четыре регистра (микросхемы) — эти 4 регистра могут адресовать 16 бит, т.е 6 адресуемых единиц теряется впустую... И не очень понимаю почему 10 — привычнее? Мы же используем кучу систем счисления: часы — по 60 минут, сутки — по 24 часа, неделя — по 7 дней, год — 12 месяцев. А если вспомнить ещё пуды, дюжины, фунты, футы, мили, дюймы, беррели... — и всем этим при определённой тренировке запросто манипулируем
Здравствуйте Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
T>Тут один хороший человек прислал мне на это вот:
T>"Как Билл Гейтс придумал информацию байтами мерять.
T> Когда Билл Гейтс занимался отладкой своих первых программ, его очень T>раздражало, что он постоянно путался где у него какой бит стоит. И тогда T>придумал он объединять их в группы по 8 бит, чтоб меньше ошибаться. И T>назвал эти группы байтами. А когда его спросили почему он байты по 8 бит T>сделал, а не по 10 — ведь удобнее же десятками считать — он сказал, что T>наооборот — когда в байте 8 бит, то удобнее, ведь когда биты в байте T>считаешь, пальцы загибать приходится, а так еще два пальца остаются, T>чтоб по клавишам нажимать. Вот с той поры и повелось байты по 8 бит T>делать."
T>Но сильно тянет на прикол. Нет, действительно! Почему?
Причёмм тут Билл???
По байтам..... почему???
А ты подумай..., чтобы было, если бы система адресации была по битам
А почему 8???
Ну это элементарно
Здравствуйте Edmond,
E>По байтам..... почему??? E>А ты подумай..., чтобы было, если бы система адресации была по битам
Нет, ну понятно что группирвка удобна — НО Почему имеено 8 бит!!!
Ведь и байты далшье группируются в параграфы памяти и в сегменты. Мне все же кажется тут аппаратные причины были (ИМХО)
E>А почему 8??? E>Ну это элементарно
E>Запиши число 8 в двоичной системе и прозреешь
Уважаемый Edmond — я все таки упорствую в своем незнании т.е. к сожалению не прозрел
(старался)
Я понимаю что 8d -> 1000b Ну и что?
А вот 10000b — > 16d !
Что-то ускользает из моего сознания
Ведь деление на байты это условность, сделанная чисто для удобства (ИМХО кончно). Более того вот VVV (см. предыдущий ответ) прислал мне ссылку. А в ссылке вот что:
"Почему в байте 8 бит?
Нам кажется привычным, что в байте ровно 8 бит, но так было не всегда. У старых компьютеров были очень странные по сегодняшним меркам размеры машинных слов и байтов. Обычно они были кратны шести. Восемь же бит в байте появились только с возникновением System/360 от IBM. Это стало стандартом де-факто, и где-то с начала 1970-х большинство компьютеров использует байты, состоящие из 8 бит, и машинные слова, кратные 8.
А почему у System/360 были 8-битные байты? Вероятно, из-за использования BCD-формата представления числа: по 4 бита на каждую цифру (0-9), таким образом один байт мог представлять две цифры. В System/360 были специальные инструкции для обработки данных такого формата, и было бы трудно использовать 6-битные байты для представления BCD, поэтому 8 бит в байте стали наилучшим решением.
Андрей КОНОНОВИЧ,
aloner@softhome.net"
Что бы было если бы например байт выглядел бы так 11111 11111b ? И адресация была бы ширее!
И кстати для пяти разрядов можно было бы 17ричную систему вводить. И тогда было бы 11111 11111b — > EE(17). Чем не удобно?
Хотя вот другие мне тут уже советуют к врачу обратиться
Здравствуйте Tiger, Вы писали:
T>Нет, ну понятно что группирвка удобна — НО Почему имеено 8 бит!!!
T>Я понимаю что 8d -> 1000b Ну и что?
T>Что бы было если бы например байт выглядел бы так 11111 11111b ? И адресация была бы ширее!
8 — это степень двойки (2^3)
Машина работает в двоичной системе, такая у нее природа.
Для машины числа степени 2, то же самое, что для тебя степени 10.
Это "круглые" числа. Это удобнее.
Основные вешки в твоем счете это 10, 100, 1000, ... и т.д.
потому что ты считаешь в десятиричной системе.
Машина считает в двоичной. 2, 4, 8, 16 ... и т.д.
Поэтому 8, а не 6 или 11. Понятно?
Почему 8, а не 4 или 16?
Когда 8 разрядов приняли де-факто, технология была на достаточном уровне,
чтобы обеспечить 8-разрядную архитектуру. А на 16 не тянула.
4 — слишком мало.
8 — рязрядов позволяют легко хранить привычную сотню (-128 .. +127 или 0 .. 256)
К тому же 2 BCD в 8 разрядов хорошо укладываются, что опять дает 0..99 — сотню.
Здравствуйте Tiger, Вы писали:
T>Здравствуйте Edmond,
E>>По байтам..... почему??? E>>А ты подумай..., чтобы было, если бы система адресации была по битам T>Нет, ну понятно что группирвка удобна — НО Почему имеено 8 бит!!!
T>Ведь и байты далшье группируются в параграфы памяти и в сегменты. Мне все же кажется тут аппаратные причины были (ИМХО)
E>>А почему 8??? E>>Ну это элементарно
E>>Запиши число 8 в двоичной системе и прозреешь
T>Уважаемый Edmond — я все таки упорствую в своем незнании т.е. к сожалению не прозрел T>(старался)
T>Я понимаю что 8d -> 1000b Ну и что?
T>А вот 10000b — > 16d !
T>Что-то ускользает из моего сознания
T>Ведь деление на байты это условность, сделанная чисто для удобства (ИМХО кончно). Более того вот VVV (см. предыдущий ответ) прислал мне ссылку. А в ссылке вот что:
Ну нет!!! Это не для удобства....
Это идёт ещё с выч алгебры...
Тут всё очень точно...
Тот ответ.., что 2^xx -- верен..
T>"Почему в байте 8 бит?
T>Нам кажется привычным, что в байте ровно 8 бит, но так было не всегда. У старых компьютеров были очень странные по сегодняшним меркам размеры машинных слов и байтов. Обычно они были кратны шести. Восемь же бит в байте появились только с возникновением System/360 от IBM. Это стало стандартом де-факто, и где-то с начала 1970-х большинство компьютеров использует байты, состоящие из 8 бит, и машинные слова, кратные 8.
То есть почему 8??? Это надо спросить у интел Ну я уверен, причина в архитектуре,.... и она есть
Но кто теперь помнит???
T>А почему у System/360 были 8-битные байты? Вероятно, из-за использования BCD-формата представления числа: по 4 бита на каждую цифру (0-9), таким образом один байт мог представлять две цифры. В System/360 были специальные инструкции для обработки данных такого формата, и было бы трудно использовать 6-битные байты для представления BCD, поэтому 8 бит в байте стали наилучшим решением.
??? Интересно....
T>Андрей КОНОНОВИЧ, T>aloner@softhome.net"
T>Что бы было если бы например байт выглядел бы так 11111 11111b ? И адресация была бы ширее!
Ничего подобного..... Давайте посчитаем проигрыш при формировании адреса УУУЖЖАСС куча алгоритмов проиграна бы была
T>И кстати для пяти разрядов можно было бы 17ричную систему вводить. И тогда было бы 11111 11111b — > EE(17). Чем не удобно?
Неудобно для машины
T>Хотя вот другие мне тут уже советуют к врачу обратиться
Здравствуйте Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
в байте ? в байте не 8 бит. Это зависит от архитектуры.
В свое время были машины с байтом в 13 бит. Просто сейчас очень распространены машины с 8-битным байтом.
DS>в байте ? в байте не 8 бит. Это зависит от архитектуры. DS>В свое время были машины с байтом в 13 бит. Просто сейчас очень распространены машины с 8-битным байтом.
Здравствуйте Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
Н-да, прикольное получилось обсуждение. Из приведенных аргументов, мне наиболее логичным видится, что основание системы счисления — степень 2. Не 4 т.к. слишком мелкие байты, не 16 т.к. аппаратные возможности не позволяли.
Хотя сам я думал, что так макимально эффективно хранить ASCII символы: большие + маленькие буквы, цифры, спец символы, некоторое минимальное количество украшательных символов — как раз 256...
А вообще мне кажется, что автор всех разводит , а если нет, то просто никогда не занимался разработкой или проектированием схем (железа), а то бы знал, что добавка 1 бита частенько усложняет систему в 2 и более раза
Здравствуйте AssAsin, Вы писали:
AA>Здравствуйте Dmitry Sustretov, Вы писали:
DS>>в байте ? в байте не 8 бит. Это зависит от архитектуры.
AA>Если я не ошибаюсь, то в IBM/360 байты были 9-битными. Но 9-й бит использовался для контроля четности и программно был не виден.
Может и не ошибаешся, однако в современных ПК тоже 9 бит, и 9-й бит тоже отвечает за четность. Однако человек имел ввиду, количество бит под данные.
Здравствуйте AssAsin, Вы писали:
AA>Здравствуйте Dmitry Sustretov, Вы писали:
DS>>в байте ? в байте не 8 бит. Это зависит от архитектуры.
AA>Если я не ошибаюсь, то в IBM/360 байты были 9-битными. Но 9-й бит использовался для контроля четности и программно был не виден.
Контроля НЕ четности. Сумма бит = 1 должна была быть нечетной.
Здравствуйте UgN, Вы писали:
UgN>Здравствуйте SVV, Вы писали:
SVV>>Может и не ошибаешся, однако в современных ПК тоже 9 бит, и 9-й бит тоже отвечает за четность.
UgN> UgN>Э-э-э... А можно поподробнее про 9 бит в современных ПК?
Подробнее об этом см. в описании Asm команды jp metka UgN>Это чего, в процессоре еще и контроль четности рюхается?
Это не в процессоре. Слышали когда-нибудь про одно из отличий i440BX от i440ZX? Так это из той серии. Контроль четности реализует чипсет, точнее его контроллер памяти. На ВХ можно поставить память с паритетом и без него.
Здравствуйте UgN, Вы писали:
UgN>Здравствуйте SVV, Вы писали:
SVV>>Может и не ошибаешся, однако в современных ПК тоже 9 бит, и 9-й бит тоже отвечает за четность.
UgN> UgN>Э-э-э... А можно поподробнее про 9 бит в современных ПК? UgN>Это чего, в процессоре еще и контроль четности рюхается?
Здравствуйте SVV, Вы писали:
UgN>>Э-э-э... А можно поподробнее про 9 бит в современных ПК? SVV>Подробнее об этом см. в описании Asm команды jp metka
Нету описания. Я сейчас асмом уже не занимаюсь.
UgN>>Это чего, в процессоре еще и контроль четности рюхается? SVV>Это не в процессоре. Слышали когда-нибудь про одно из отличий i440BX от i440ZX? Так это из той серии. Контроль четности реализует чипсет, точнее его контроллер памяти. На ВХ можно поставить память с паритетом и без него.
Тогда я не понял. Если мы говорим про память — то это одно, это устройство хранения данных, для повышения надежности, снабженное механизмом контроля по четности. О чем процессор, как основа вычислительной машины, может и не знать — это не его дело.
Или же мы говорим о том, что современные ПК имеют N-разрядную архитектуру, в которой помимо информационных разрядов
(степень двойки: 8-16-32-64) имеется еще один бит для контроля четности. Последнее мне не известно.
А с ваших слов я сделал именно такой вывод.
SVV> однако в современных ПК тоже 9 бит, и 9-й бит тоже отвечает за четность
Здравствуйте UgN, Вы писали:
UgN>Здравствуйте SVV, Вы писали:
UgN>>>Э-э-э... А можно поподробнее про 9 бит в современных ПК? SVV>>Подробнее об этом см. в описании Asm команды jp metka
UgN>Нету описания. Я сейчас асмом уже не занимаюсь.
Плохое значит у тебя руководство по асму.
UgN>>>Это чего, в процессоре еще и контроль четности рюхается? SVV>>Это не в процессоре. Слышали когда-нибудь про одно из отличий i440BX от i440ZX? Так это из той серии. Контроль четности реализует чипсет, точнее его контроллер памяти. На ВХ можно поставить память с паритетом и без него.
UgN>Тогда я не понял. Если мы говорим про память — то это одно, это устройство хранения данных, для повышения надежности, снабженное механизмом контроля по четности. О чем процессор, как основа вычислительной машины, может и не знать — это не его дело.
Совершенно верно, к процессору они относятся постольку-поскольку. Когда чел. спрашивал про количество бит в байте, он скорее всего имел ввиду те биты, которые относятся к процессору. Когда же упоминалось про IBM/360 и 9 бит, то там не оговаривалось про какие 9 бит идет речь. И я подумал что человек чего-то путает.
UgN>Или же мы говорим о том, что современные ПК имеют N-разрядную архитектуру, в которой помимо информационных разрядов
ПК — это ведь не процессор? не так ли? если говорить про ПК, то ненужно забывать и про его систему памяти UgN>(степень двойки: 8-16-32-64) имеется еще один бит для контроля четности. Последнее мне не известно. UgN>А с ваших слов я сделал именно такой вывод.
Контроль четности может быть, а может и не быть. Это еще и от памяти зависит. x68 CPU это мало волнует.
SVV>> однако в современных ПК тоже 9 бит, и 9-й бит тоже отвечает за четность
UgN>
kig тебе ссылку дал, возможно там что-то дельное... сейчас времени особо нет, но потом посмотрю.
UgN>>Нету описания. Я сейчас асмом уже не занимаюсь. SVV>Плохое значит у тебя руководство по асму.
Читай выше — нету описания. И руководства нету. Ничего нету!!!
Сиротка, я сиротка-а-а-а-а... Сам я не местный... Поможите люди добрыя!!!
Я шпиен из рядов ООП. А у Страуструпа про асм нет ничего. И у Буча нету...
UgN>>Тогда я не понял. Если мы говорим про память — то это одно, это устройство хранения данных, для повышения надежности, снабженное механизмом контроля по четности. О чем процессор, как основа вычислительной машины, может и не знать — это не его дело. SVV>Совершенно верно, к процессору они относятся постольку-поскольку. Когда чел. спрашивал про количество бит в байте, он скорее всего имел ввиду те биты, которые относятся к процессору. Когда же упоминалось про IBM/360 и 9 бит, то там не оговаривалось про какие 9 бит идет речь. И я подумал что человек чего-то путает.
Ну вот. Если не в проце — то как угодно. Ух. Прямо от сердца отлегло.
UgN>>Или же мы говорим о том, что современные ПК имеют N-разрядную архитектуру, в которой помимо информационных разрядов SVV>ПК — это ведь не процессор? не так ли? если говорить про ПК, то ненужно забывать и про его систему памяти
Да как тебе сказать. Вопрос спорный.
Но, сдается мне, что это память к процессору подбирают, а не наоборот!
Я вообще перцев видел. В начале решают что брать — Intel или AMD, на какую частоту, а потом подбирают чипсет, а к чипсету мозги...
Скажешь так не бывает?
Вот архитектура х86 уже сколько лет используется?
(Хоть и извращена с тех пор немилосердно, и вообще нужна только для совместимости)
А сколько памяти с тех пор утекло? (с) UgN.
И с четностью была и без четности...
UgN>>(степень двойки: 8-16-32-64) имеется еще один бит для контроля четности. Последнее мне не известно. UgN>>А с ваших слов я сделал именно такой вывод. SVV>Контроль четности может быть, а может и не быть. Это еще и от памяти зависит. x68 CPU это мало волнует.
SVV>kig тебе ссылку дал, возможно там что-то дельное... сейчас времени особо нет, но потом посмотрю.
Кто такой ECC я знаю.
(Я хоть и шпиен, но по образованию — инженер электронной техники. )
А вот по ссылке посмотреть не могу...
Если че интересное увидишь, напиши, ок?
хъ
SVV>>kig тебе ссылку дал, возможно там что-то дельное... сейчас времени особо нет, но потом посмотрю. UgN>Кто такой ECC я знаю.
UgN>(Я хоть и шпиен, но по образованию — инженер электронной техники. )
UgN>А вот по ссылке посмотреть не могу... UgN>Если че интересное увидишь, напиши, ок?
Ну раз такая специальность, то и не мучайся.
Ничего нового для себя там не увидишь.
Здравствуйте Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
T>Тут один хороший человек прислал мне на это вот:
T>"Как Билл Гейтс придумал информацию байтами мерять.
T> Когда Билл Гейтс занимался отладкой своих первых программ, его очень T>раздражало, что он постоянно путался где у него какой бит стоит. И тогда T>придумал он объединять их в группы по 8 бит, чтоб меньше ошибаться. И T>назвал эти группы байтами. А когда его спросили почему он байты по 8 бит T>сделал, а не по 10 — ведь удобнее же десятками считать — он сказал, что T>наооборот — когда в байте 8 бит, то удобнее, ведь когда биты в байте T>считаешь, пальцы загибать приходится, а так еще два пальца остаются, T>чтоб по клавишам нажимать. Вот с той поры и повелось байты по 8 бит T>делать."
T>Но сильно тянет на прикол. Нет, действительно! Почему?
Цитируем Д. Кнута:
Основной единицей информации является байт. Размер байта, т. е. количества информации, которое содержит байт,
не оговариватеся, но он должен принимать по меньшей мере 64 различных значениям <...> Следовательно,
один байт в двоичной машине соответсвует шести двоичным разрядам (битам), в десятичной --- двум десятичным цифрам...
Т. е. размер байта раньше не оговарился. Восемь же удобнее десяти, так как это степень двойки, как уже упоминалось.
Здравствуйте, Mystic, Вы писали:
M>Здравствуйте Tiger, Вы писали:
T>>Уважаемый ALL!
T>>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
T>>Тут один хороший человек прислал мне на это вот:
T>>"Как Билл Гейтс придумал информацию байтами мерять.
T>> Когда Билл Гейтс занимался отладкой своих первых программ, его очень T>>раздражало, что он постоянно путался где у него какой бит стоит. И тогда T>>придумал он объединять их в группы по 8 бит, чтоб меньше ошибаться. И T>>назвал эти группы байтами. А когда его спросили почему он байты по 8 бит T>>сделал, а не по 10 — ведь удобнее же десятками считать — он сказал, что T>>наооборот — когда в байте 8 бит, то удобнее, ведь когда биты в байте T>>считаешь, пальцы загибать приходится, а так еще два пальца остаются, T>>чтоб по клавишам нажимать. Вот с той поры и повелось байты по 8 бит T>>делать."
T>>Но сильно тянет на прикол. Нет, действительно! Почему?
M>Цитируем Д. Кнута: M>
M>Основной единицей информации является байт. Размер байта, т. е. количества информации, которое содержит байт,
M>не оговариватеся, но он должен принимать по меньшей мере 64 различных значениям <...> Следовательно,
M>один байт в двоичной машине соответсвует шести двоичным разрядам (битам), в десятичной --- двум десятичным цифрам...
M>
M>Т. е. размер байта раньше не оговарился. Восемь же удобнее десяти, так как это степень двойки, как уже упоминалось.
А Кнут не уточнял зачем ему 64 различных значения???
>Но вот почему ИЗНАЧАЛЬНО в байт заложили 8 бит
изначально не было 8 бит в байте
байты были разные и по 6 бит и по 7 и по 9
именно по этой причине когда то 8 бит никто не называл байтом, либо говорили октет либо восьмибитный байт
Здравствуйте, Tiger, Вы писали:
T>И еще вопрос — а почему биты в байтах считаются в обратном порядке (т.е. справа налево). Только не надо подкаловать что все это арабскими террористами было изначально придумано (хотя похоже конечно)
Здравствуйте, Tiger, Вы писали:
T>Я понимаю что 8d -> 1000b Ну и что?
T>А вот 10000b — > 16d !
Во первых восьмерка это 4 разряд, т.е. 2^2, а вот 5 разряд уже не то. А во вторых на заре появления микропроцессоров даже 8-ми битная шина была на пределе, а уж про 16-тибитную и говорить нечего. Это как минимум порядка 20 ног у микросхемы, а по тем временам это уже большой и дорогой корпус. Сейчас то уже конечно ширина шины 8 битами не ограничивается, но для совместимости оставили минимальный объем информации 8 бит.
Здравствуйте, Tiger, Вы писали:
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
Здесь нужно вспомнить историю байтов и слов.
Первые цифровые вычислительные устройства использовались исключительно для вычислений, для организации коих их процессоры обрабатывали слова самых причудливых длин — 48 бит, 23 бита и т. п. Обычно структура слова определялась жестко на два случая: в слове лежит инструкция, либо в слове (или в последовательности соседних слов) лежит вещественное число.
Вскоре подумали, что неплохо бы и текстовую информацию как-то представлять и обрабатывать. Ну хотя бы программку на том же Фортране компильнуть — как ее в компьютер засунуть?
Встал вопрос о кодировке. Для начала попробовали код, применявшийся в проволочном телеграфе системы Бодо. Этот код был 6-битным, позволял представить весь алфавит, арабские цифры, какие-то знаки и управляющие коды. Поэтому на определенном этапе стали широко распространены слова, кратные шести битам (четкого понятия "байт" не было). Например, в слово 24 бит длиной можно засунуть целое число, короткое вещественное число или четыре символа.
Но потом символов стало не хватать, захотелось, к примеру, еще и строчных букв. Новый стандарт ASCII, принятый для телетайпов, был уже семибитным.
В середине 1960-х IBM начала свою "коронную" серию 360, имевшую большой успех. В ней, кажется, впервые было применено аппаратно поддержанное деление памяти не только пословное, но и побайтное. Как здесь уже упоминалось, в этой системе широко применялось двоично-кодированное десятичное представление целых чисел. Более того, IBM была разработана кодировка BCDIC (Binary-Coded Decimal Information Code), где было 100 позиций, а коды символов представлялись двоично-кодированными десятичными целыми, влазившими как раз в 8 бит. Считалось, что 100 позиций вполне достаточно. Чуть позже эта кодировка "подросла" до EBCDIC (Extended BCDIC), которая жива кое-где и поныне.
Понятно, что, так как одна десятичная цифра могла быть представлена четверкой бит (тетрадой или нибблом), о 10- или 7-битном байте говорить не приходилось. Одной тетрады было явно мало, трех — явно много.
Слово в серии 360, кстати, было 32-битным, и теперь делилось на 4 байта, которые могли быть адресованы независимо. Собственно так появилось само понятие байта — минимальная независимо адресуемая структурная единица ЗУ, разрядность которой должна быть достаточной для хранения символа из типичного набора. Очевидно, 8 бит — весьма хорошо удовлетворяющая последнему критерию величина, ведь она дожила до наших дней. Величина в 7 бит — по тем временам — тоже казалась достаточной, но IBM "задала тон", и байт повсеместно утверждался как 8-битный. Впрочем, многие устройства ввода-вывода (видеоконсольные терминалы, телетайпы, принтеры) производства не IBM (а хотя бы той же DEC в его также популярной серии PDP-11) принимали информацию по 7-битным шинам. Для них байт был 7-битным.
Обычно байт являлся частью слова, которое составлялось как кратное количество байт. При появлении 8-битных микропроцессоров понятия "байт" и "слово" для них стали синонимами.
T>Тут один хороший человек прислал мне на это вот: T>"Как Билл Гейтс придумал информацию байтами мерить. T>..."
T>Но сильно тянет на прикол.
Это и есть прикол.
Фактически, 8-битный байт уже устоялся, когда Билл Гейтс начинал свою карьеру.
Re[4]: Фундаментальный вопрос :)
От:
Аноним
Дата:
08.06.03 09:10
Оценка:
Здравствуйте, AndrewVK, Вы писали:
AVK>Во первых восьмерка это 4 разряд, т.е. 2^2, а вот 5 разряд уже не то. А во вторых на заре появления микропроцессоров даже 8-ми битная шина была на пределе, а уж про 16-тибитную и говорить нечего. Это как минимум порядка 20 ног у микросхемы, а по тем временам это уже большой и дорогой корпус. Сейчас то уже конечно ширина шины 8 битами не ограничивается, но для совместимости оставили минимальный объем информации 8 бит.
Ну что ж вы уперлись в аппаратные ограничения первых микпропроцессоров? Байты появились до них на больших и средних машинах. Если уж на то пошло, первый микропроцессор Intel (1971 г.) имел маркировку 4004, второй (1972 г.) — 4040. Угадайте, что означают цифры "4"?
Здравствуйте, Tiger, Вы писали:
T>Здравствуйте Аноним, Вы писали:
T>И еще вопрос — а почему биты в байтах считаются в обратном порядке (т.е. справа налево).
А что, разве есть разница как считать?
Если говорить о старшенстве бит, то это совсем не обязательно. Эт формат Intel и тех кто его копировал. Я совсем не уверен что всякие Power PC или Ultra Spack имеют тот же формат. По крайней мере почти все микрконтроллеры и МП (отлиные от Intel-подобных), с которыми приходилось иметь дело имеют другой формат, из-за чего вечный геморой с конвертацией.
А на счёт 8 бит. Я думаю здесь спорить не имеет смысла. Просто когда то Intel сделала очень удачный 8-и битовый МК. IBM зделала на его основе компьютеры, которые захватили большую часть рынка. Появились клоны этих процов ... ну и понеслась, вскоре все были вынуждены принять этот формат.
А какими собственно порциями хранить данные возможно и не имеет такого большого значения.
Даже самую простую задачу можно сделать невыполнимой, если провести достаточное количество совещаний
T>"Как Билл Гейтс придумал информацию байтами мерять.
T> Когда Билл Гейтс занимался отладкой своих первых программ, его очень T>раздражало, что он постоянно путался где у него какой бит стоит. ...
IMHO когда появились байты, Билл еще ходил в детский сад...
А>"Почему дисковод 3.5-дюймовый, а не 10-сантиметровый. Слабые стороны метрической системы мер".
А>"Причины выбора советским министерством обороны калибра 5.45 мм. Экономические последствия отказа от стандартных 5-мм сверел".
А также для сторонников круглых цифр:
— Сильные "за" и слабые "против" доводы замены клавиатуры PC/AT (101/102 клавиши)
— Почему мышь такая дефективная — всего-то три кнопки?
— Нужна ли кнопка "Reset"?
Здравствуйте, Аноним, Вы писали:
А>К рассмотрению на следующем заседании предлагаются следующие темы:
А>"Почему дисковод 3.5-дюймовый, а не 10-сантиметровый. Слабые стороны метрической системы мер".
А>"Причины выбора советским министерством обороны калибра 5.45 мм. Экономические последствия отказа от стандартных 5-мм сверел".
Кстати, почему стефенсоновская колея железных дорог составляет 1435 мм = 5' 8 1/2"? Это же не круглое число никаким боком, в отличие от русской колеи 1524 мм = 6'.
Ответ, между прочим связан с лошадиной... пардон, задницей.
А>Кстати, почему стефенсоновская колея железных дорог составляет 1435 мм = 5' 8 1/2"? Это же не круглое число никаким боком, в отличие от русской колеи 1524 мм = 6'.
А> Ответ, между прочим связан с лошадиной... пардон, задницей.
Нифига, по легенде, она связана с выражением "на ### больше"...
Это была резолюция на проекте первой русской ЖД, где рассматривался вопрос ширины колеи.
Резолюцию поняли превратно, с тех пор вот и мучаемся...
Re[4]: Фундаментальный вопрос :)
От:
Аноним
Дата:
11.06.03 14:21
Оценка:
Здравствуйте, UgN, Вы писали:
А>>Кстати, почему стефенсоновская колея железных дорог составляет 1435 мм = 5' 8 1/2"? Это же не круглое число никаким боком, в отличие от русской колеи 1524 мм = 6'.
А>> Ответ, между прочим связан с лошадиной... пардон, задницей.
UgN>Нифига, по легенде, она связана с выражением "на ### больше"... UgN>Это была резолюция на проекте первой русской ЖД, где рассматривался вопрос ширины колеи. UgN>Резолюцию поняли превратно, с тех пор вот и мучаемся... UgN>
Нет, эта легенда вздорна, ведь разница всего-то 3 1/2" = 89 мм. Да относится она к русской колее. А вопрос-то я задал про стефенсоновкую... Почему она такая некруглая?
Re[2]: Фундаментальный вопрос :)
От:
Аноним
Дата:
11.06.03 14:46
Оценка:
Здравствуйте, VVV, Вы писали:
VVV>Хотя, думаю, тут ещё и аппаратные соображения играют существенную роль. Например, для адресации любого из 8-ми бит достаточно трёх бит (регистров — три микросхемы в далёкие времена), если бы было 10 бит, то надо уже четыре регистра (микросхемы) — эти 4 регистра могут адресовать 16 бит, т.е 6 адресуемых единиц теряется впустую...
Это не имеет практически никакого значения. Когда в последний раз ты адресовал отдельные биты?
Re[4]: Фундаментальный вопрос :)
От:
Аноним
Дата:
11.06.03 14:54
Оценка:
Здравствуйте, UgN, Вы писали:
UgN>Нифига, по легенде, она связана с выражением "на ### больше"...
Кстати, эта легенда больше применима к испанской колее. Она, как и русская, составляет 6 футов, но не английских, а кастильских, что дает более 1600 мм. Т. е. отличие от русской, разница более правдоподобна.
Здравствуйте, Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты ;)
Насколько я помню, у кнута в книжке байт = 7бит, так-же там упоминается о компах с байтом = 10бит. А объясняет 8ми битный байт Дональд по моему так. Мол туда помещаются строчные, прописные буквы ангельского алфавита, знаки препинания и цифры. Мол в 7 не помещается, а 9 — много.
Здравствуйте, tyomchick, Вы писали:
T>Если говорить о старшенстве бит, то это совсем не обязательно. Эт формат Intel и тех кто его копировал. Я совсем не уверен что всякие Power PC или Ultra Spack имеют тот же формат. По крайней мере почти все микрконтроллеры и МП (отлиные от Intel-подобных), с которыми приходилось иметь дело имеют другой формат, из-за чего вечный геморой с конвертацией.
Вы имели в виду порядок байт в слове, естественно. Ну ничего, со всяким бывает.
А>К рассмотрению на следующем заседании предлагаются следующие темы:
А>"Причины выбора советским министерством обороны калибра 5.45 мм. Экономические последствия отказа от стандартных 5-мм сверел".
калибр вообще то был 7.62, почему ? а вот курящие, возьмите сигарету и присмотритесь к ней
Здравствуйте, XMbIPb, Вы писали:
XMI>Здравствуйте, <Аноним>, Вы писали:
XMI> А>>К рассмотрению на следующем заседании предлагаются следующие темы:
А>>"Причины выбора советским министерством обороны калибра 5.45 мм. Экономические последствия отказа от стандартных 5-мм сверел".
XMI>калибр вообще то был 7.62, почему ? а вот курящие, возьмите сигарету и присмотритесь к ней
7.62 мм = 3 линии, ровное число (линия -- мера длины, использовавшаяся в России)
А сигареты -- это следствие
Кто здесь?!
Re[4]: Фундаментальный вопрос :)
От:
Аноним
Дата:
20.06.03 16:25
Оценка:
Здравствуйте, _wqwa, Вы писали:
_>7.62 мм = 3 линии, ровное число (линия -- мера длины, использовавшаяся в России...
Здравствуйте, _wqwa, Вы писали:
_>линия -- мера длины, использовавшаяся в России...
и равная 1/10 дюйма. 1/10" = 2,54 мм; 3/10" = 7,62 мм.
Re[5]: Фундаментальный вопрос :)
От:
Аноним
Дата:
20.06.03 16:26
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Нет, эта легенда вздорна, ведь разница всего-то 3 1/2" = 89 мм. Да относится она к русской колее. А вопрос-то я задал про стефенсоновкую... Почему она такая некруглая?
Ну и почему же?
Re[5]: Фундаментальный вопрос
От:
Аноним
Дата:
20.06.03 16:26
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Нет, эта легенда вздорна, ведь разница всего-то 3 1/2" = 89 мм. Да относится она к русской колее. А вопрос-то я задал про стефенсоновкую... Почему она такая некруглая?
Здравствуйте, Tiger, Вы писали:
T>Уважаемый ALL!
T>Прошу сильно не пинать ногами, но почему в байте 8 бит? Ну на дисках и в памяти все лежит в двоичном виде и оно понятно — поскольку два четко различимых состояния легко выделить физически. Но вот пачему в байте 8 бит? Почему не 10 — ведь так привычнее — ведь не все же компьютерщики мазохисты
T>Тут один хороший человек прислал мне на это вот:
T>"Как Билл Гейтс придумал информацию байтами мерять.
skip T>Но сильно тянет на прикол. Нет, действительно! Почему?
Так и есть. Могу посоветовать прочитать замечательнейшую книжку Чарльза Петцера "Code".
Так на странице 215 написано:
Слово "байт" родилось в фирме IBM году этак в 1956. Произошло от английского слова "bite" (кусок), но писалось через "y", чтобы никто не путал со словом "bit". В течение некоторого времени термином "байт" обозначалось просто число битов в потоке данных. Но в середине 60-х в связи с созданием в IBM компьютеров System/360, это слово стало обозначать группу из 8 битов.
Понятно, откуда ноги растут? Из IBM. БГ либо только родился, либо собирался это сделать.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
T>>"Как Билл Гейтс придумал информацию байтами мерять.
LVV>Так и есть. Могу посоветовать прочитать замечательнейшую книжку Чарльза Петцера "Code". LVV>Так на странице 215 написано: LVV>Слово "байт" родилось в фирме IBM году этак в 1956.
Ну вот: я же говорил, что когда появились байты, Билл еще ходил в детский сад!