На распутье
вернуться

Дмитриев Павел В.

Шрифт:

Как начальник, заводишь тудушник [245] , привычку еженедельно спрашивать результаты, выбиваешь задачу с точки, как в гольфе мячик из песка, снова и снова… Тудушник разносит к чертям, потом распухает голова, и кошмарик мягких белых стен палаты превращается в навязчивую идею…

Однако перфоратор был полностью подготовлен к испытаниям без всякого моего вмешательства и, к моему огромному удивлению, «пошел» с первой попытки. Федор явно почувствовал вкус победы в самостоятельном решении задач. Губить такую инициативу, все равно что пускать под нож стельную корову. Ему немедленно открыли следующий горизонт ответственности. Теперь этот волосатый и бородатый хипарь погонял по коридорам аж трех ботанов-инженеров, учил их «грокать», держать в руках паяльник, правильно нюхать канифоль, а также ничему не удивляться в «721».

245

ToDo — чрезвычайно распространенный тип комментариев, показывающих разработчику место, с которого нужно продолжить работу.

В запале энтузиазма эта команда умудрилась сама додуматься подключить к уже хорошо освоенному интерфейсу ноутбука (не видя ничего, кроме глухой стенки с торчащей из нее парой кабелей) новый телетайп. Даже не спросили меня. Хорошо хоть ничего не спалили при преобразовании уровней сигналов. Уже задним числом я в десятый раз похвалил себя за качественно организованное заземление обоих зданий НИИ. Не будь зарыто в землю столько железа, с такими инициативными товарищами давно пришел бы конец интерфейсам Dell’а [246] . Зато как потешались над моим проектом местные электрики полгода назад, «безграмотный перестраховщик» — это был самый мягкий, почти ласкательный эпитет.

246

Телетайп выдает сигналы с уровнем 0…-80В, для COM-порта нужно –12…+12В.

Недолго думая выпихнули пятибитный телеграфный код МТК-2 в последовательный порт. Дальше пришлось разбираться мне, и — маленькое чудо: в HyperTerminal нашлась крутилочка, переключающая порт на нужную кодировку и скорость. Не отрубили в Микрософте этот древний телетайпный хвост, позаботились о прошлом… Грешным делом, я уж прикидывал, как наиболее безболезненно перенастраивать телетайп, в котором частота передачи задавалась «железно» в буквальном смысле этого слова, а именно — вращающимся цилиндром с выступами, которые управляли нажатыми контактами [247] .

247

Телеграфный трехрегистровый код МТК-2 был принят в СССР в 1963 году. Обработка старт-стопных битов во всем их многообразии в тексте опущена. Ничего особо сложного и интересного в этом нет, но изложение загромождает непомерно.

На этом проблемы только начались. К своему большому огорчению, я убедился в очевидном: пять бит достаточно лишь для тридцати двух букв. На советском телетайпе это «изящно» обошли, введя три регистра (латинский, русский, цифры), переключения между которыми производили специальными командами. Не понятно, какой марксизм помешал инженерам СССР подумать чуток о будущем и принять сразу аналог ASCII для русского алфавита [248] . Но бороться с этим явно бесполезно, нужно приспосабливаться.

248

Стандарт на таблицу ASCII первоначально в 1963 году был принят 7-битный, то есть всего из 128 знаков. В основном он использовался как раз для телетайпов.

Зато еще не поздно принять нормальную кодировку для ЭВМ! Заранее, буквально в зародыше, раздавить на уровне отраслевых нормативов разброд и шатание, которые царили в советской компьютерной среде. Шутка ли, в меню FAR на моем верном Dell’е мне удалось найти более десятка разных таблиц. Только к эпохе первых персоналок можно отнести ISO с непонятным номером, целый выводок разных KOI, Альтернативную CP866, «Основную» ГОСТ… Наверняка это далеко не все плоды фантазий программистов СССР, но заниматься археологией у меня особого желания не возникло. Только задумался, сколько сил и денег пошло на устранение идиотизма отраслевого министерства. Сложно им было стукнуть кулаком и принять единую форму? [249] Пусть не самую удобную, но какая была бы экономия!

249

11 марта 1968 года не кто иной, как президент США Линдон Джонсон, потребовал принять ASCII как государственный стандарт. Это дорогого стоит.

При этом совместимость с ASCII и ее латинскими буквами неизбежна. Можно было, разумеется, на радость врагам предложить доморощенный кириллический стандарт и фанатично его продвигать. Но насилие над здравым смыслом оставим коммунистам. Поэтому первые сто двадцать восемь знаков или семь бит станем считать уже свершившимся злом. И пусть сейчас в СССР толком никто не знает, шесть бит в байте, семь или сразу десять. Мне совершенно точно известно, что их будет восемь! На этом «восьмом» есть следующие свободные сто двадцать восемь клеточек в таблице. Их нужно только заполнить, этого хватит минимум на десять лет. Далее процессоры будут помощнее, памяти в них побольше, придет время графических операционок и полных мультиязыковых наборов шрифтов.

Насколько помню, основных проблем с кириллическими кодировками было две. Во-первых, из-за блока псевдографики, крайне неудачно расположенной в IBM PC. Не лезли шестьдесят шесть букв алфавита ни сверху, ни снизу этого занятого куска. Не позаботились штатовские инженеры о длинных алфавитах или специально учинили нехилую диверсию для СССР. В общем, маленькие русские буквы поневоле начинались до блока кракозябр, прерывались и продолжались после него. Программисты были крайне недовольны [250] .

250

Подобную восьмибитную таблицу, известную как Code page 437, IBM разработала уже в 80-х годах. Ее успели «прошить» в ПЗУ популярных видеоадаптеров MDA, и это уже «навечно».

Во-вторых, кому-то неизвестному было удобно отбросить старший бит и получить вместо русского текста транслит, вполне читаемые слова, написанные латинскими буквами. Тут уж вообще ни о каком алфавитном порядке речь не шла, получалось что-то типа Т, У, Ж, В, Ь, C, Ы, B, З. Программисты яростно матерились, попробуй, напиши в таких условиях алгоритм сортировки или просто что-то внятное для работы с текстом.

Но меня-то пока ничто не ограничивало! Выбрать надо было наиболее удобный вариант. Например, «Основную» — она и название имела понятное, и любимому чиновниками всех времен ГОСТу соответствовала. На вид вполне прилична, вот только буква «е» стояла в стороне, на тридцать третьей позиции. Задумался, проверил все имеющиеся кодировки. Сакральная буква обнаружилась на своем законном седьмом месте лишь в двубайтовом UTF начала девяностых, по сути, в совершенно иной эпохе. Что делать? [251]

251

Основная кодировка согласно ГОСТ 1968 — 87 была принята в 1987 году взамен КОИ-8, однако использовалась мало. При очевидном удобстве она появилась слишком поздно.

  • Читать дальше
  • 1
  • ...
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • ...

Private-Bookers - русскоязычная библиотека для чтения онлайн. Здесь удобно открывать книги с телефона и ПК, возвращаться к сохраненной странице и держать любимые произведения под рукой. Материалы добавляются пользователями; если считаете, что ваши права нарушены, воспользуйтесь формой обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • help@private-bookers.win