LINUX.ORG.RU
ФорумTalks

«Сослагательное наклонение истории» или что бы было если бы в байте было 7 бит


0

1

А давайте представим что бы было если бы в байте было 7 бит. Все конечно же подумали про кодировки. Не было бы зоопарка кодировок скорее всего. Ни cp1251, ни koi8-r. Кто с emailами работал тот знает, что такое UTF-7. Ну может быть еще аналог utf8 бы сделали, скажем символы

SO, 0E — Shift Out, измени цвет ленты (использовался для двуцветных лент; цвет менялся обычно на красный). В дальнейшем обозначал начало использования национальной кодировки. SI, 0F — Shift In, обратно к Shift Out.

использовали.

Это мелочь на самом деле. Не туда смотрите.

А вот представьте, что бы стало с х86. Были бы 8086 и 16-килобайтные сегменты. И 2^(14+4)=256кб адресуемой памяти. Кто еще помнит что такое сегмент знает откуда 4ка. Билл гейтс с словами 256 килобайт должно хватить для любых задач-каково? Ну ладно, не дураки тогда были, 256 мало, значит сегмент надо сдвигать больше чем на 4. Если на 6 бит, то получим опять мегабайт. Но наверно сдвигали бы сразу на 7 бит. 2 метра максимум для 8086 а не мегабайт. 7 бит не хватит на фуфлокоманды, так что никаких AAD/AAA/AAC/DAA, однобайтные команды - роскошь.

Дендики бы работали на каких-нибудь 8086 просто потому что Z80 с 16 килобайтами адресов быстро бы всех задолбал. И даже мультиплексирование адресов ему бы не помогло долго продержаться.

С кодировками я погорячился правда. Кто помнит MDA и CGA видеоадаптеры, тот поймет о чем я говорю. Там в ПЗУ были зашиты символы. Инжалид дежице во все поля в этой стране. Бейсик, Паскаль и Си переведены на русский язык.

Если x < 5 то 
начел;
   y = косинус(a)+x;
кончел;
печатай("игрек = %ф\п", у);
збс;

В 80286 скорее всего был бы все тот же лимит в 16 мегабайт, а формат дескриптора бы поменялся. Возможно у него бы были 3 байтные смещения, и их бы хватило многим за глаза 2метровых сегментов. Не было бы стимула делать аналог 32битной flat-памяти.

int far * mydata; char near * ptr; во все поля. Наступает эра 21битных программ. операционная система окна3.0 - теперь 21битная!

Видеоадаптеры EGA с поддержкой национальных кодировок, инжалид дежице уходит в прошлое. А вот с цветами проблема. 4битный цвет с 7битными пикселями сделать сложновато, не находите? Учитывая что на EGA были 4 отдельные фрейбуферы для каждого бита в пикселе, вангую введение 8битного байта на EGA явочным порядком.

у особо прошареных уже есть VGA. 128цветов в палитре - это много.

А потом появился бы 80386 и 4байтные адреса. Максимум 256метров адресуемой памяти.

Выпущен новый 21битный процессор 80486. Лихие 90е. Операционная система окна3.0 живее все живых. Какой-то финский студент просит посмотреть на его программу для терминала. штеуд объявляет о выпуске процессора пентиум. 28битные floatы теперь считаются очень бысто. Где-то к началу 2000х PAE есть во всех процах.

а теперь представьте, что бы было если бы в байте было 9 бит..

☆☆☆

Последнее исправление: ckotinko (всего исправлений: 1)

А если бы в байте было 6½ бит, то всё стало бы ещё труднее. Возникли бы фундаментальные трудности с физическим представлением половины бита в компьютере, пришлось бы изобретать даже новые логические операции.

Deleted
()
Ответ на: комментарий от ckotinko

на 640х480

Так не честно сравнивать. :) У EGA только x350 было. А так и у меня вышло в двое больше. Ибо от перемены мест бит сумма не меняется. :)

втрое дороже.

Я не думаю, что цена тут особо принципиальна. Я тут погуглил, EGA появилась в продаже в 1985, по цене 600-800 у.е. 600 у.е. тогда стоило 2 мб памяти, т.е. по 40 у.е. за 128 кб. На фоне общей стоимости карты не много.

Но заодно вспомнил, что разделение на битовые плоскости делалось не для экономии памяти, а для экономии адресного пространства. Нельзя было просто так взять и отобразить столько памяти в первый мегабайт. DOS-программам ничего не осталось бы. Ну, вру, но старшие модели имели до 256 кб. Что по меркам DOS не мало.

В принципе был бы вариант работать словами, по 14 бит, получив 644 пиксела на строку. Это не добавило бы слишком много геммороя, потому что наш процессор как раз 16-битный (т.е. в этом мире - 14-битный:) и смог бы нативно работать со словами.

Ведь основная проблема-то у нас не в том, что битов не хватает, а в том, что их количетсво в байте не чётное. И на 3 не делится. :)

atrus ★★★★★
()
Последнее исправление: atrus (всего исправлений: 1)
Ответ на: комментарий от ckotinko

поправочка: 109кб в 8битных байтах. 128000 байт в семибитных байтах. Это грубо говоря 2 64кб микрухи или 1 128кб. а в vga-cтиле на 2 128кб микрухи. на 640х480 уже 384кб надо - втрое дороже.

Э не, если меняем количество бит в байте, то и все что от него пляшет тоже надо менять. Как и размер экрана, не 320х240 и 640х480 а например 245х192 и 450х384.

V1KT0P ★★
()
Ответ на: комментарий от redgremlin

Я о том, что значений маловато для общих задач, а не о том, что такого не было.

Cyril ★★
()
Ответ на: комментарий от sergej

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

Cyril ★★
()
Ответ на: комментарий от Eddy_Em

Одно дело - специальные задачи, и другое дело - общие. Я бы сравнил это с шасси самолётов - есть, конечно, лыжные варианты, но в общем случае используется колёсное.

Cyril ★★
()
Ответ на: комментарий от Cyril

Одно дело - специальные задачи, и другое дело - общие

Прикол в том, что некоторые "специальные задачи" уже используют как "общие": пихают эти микроконтроллеры во всякие недотелефоны, холодильники, микроволновки; ставят на них линукс…

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Прикол в том, что некоторые «специальные задачи» уже используют как «общие»: пихают эти микроконтроллеры во всякие недотелефоны, холодильники, микроволновки; ставят на них линукс…

Ну посмотрим, чем это кончится.

Cyril ★★
()
Ответ на: комментарий от Eddy_Em

Это пессимизм!!! Хотя, конечно, все и всё так кончает. Ж;-)

Cyril ★★
()
Ответ на: комментарий от atrus

их количетсво в байте не чётное. И на 3 не делится. :)Да блин.

Я как раз хотел написать «а вдруг бы инженеры во времена лампомониторов да еще и чернобелых часто забили на RGB и юзали YcRcB»

Y  Y
 rb
Y  Y
в 2 байта или 14 бит можно было бы вфигачить 12бит Y(3бита на компоненту) и два бита rb. А в 2 допбайта еще вфигачить по 2 бита на каждый квадрат.

ckotinko ☆☆☆
() автор топика
4 марта 2014 г.

Давай сразу на 3,46161711
А че, долой щетабельные числа

ubuntuawp ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.