Боб Бемер, отец ASCII

Если бы в 1963 году не произошли события, самым серьезным образом повлиявшие на дальнейшее развитие компьютерных технологий, возможно, сегодня у нас не было бы ни электронной почты, ни World Wide Web. Перемещающийся курсор, лазерная печать и видеоигры — все это так и не появилось бы на свет, если бы не этот мощный технологический прорыв.

Итак, о чем же идет речь? Оказывается, таинственным событием, которому все мы сегодня должны быть благодарны, стало изобретение кода ASCII. Да-да, старый добрый ASCII, упростивший задачу форматирования текстов. Чтобы понять, почему появление кода ASCII (произносится «аски») сыграло столь значительную роль, нужно иметь в виду, что до этого различные компьютеры просто-напросто не могли взаимодействовать друг с другом. Каждый производитель пытался по-своему представить символы алфавита, цифры и управляющие коды.

«Мы пользовались свыше 60 способами кодирования символов, — вспоминал Боб Бемер, человек, заслуживший славу отца ASCII. — Это было настоящим вавилонским столпотворением».

Код ASCII (American Standard Code for Information Interchange — «американский стандартный код для обмена информацией») стал общим знаменателем для компьютеров, которые ранее не имели друг с другом ничего общего. Всем буквам, цифрам, знакам препинания и другим символам (управляющим кодам) были поставлены в соответствие стандартные числовые значения. К примеру, заглавная буква «А» обозначалась числом 65.

В воздух поднялся первый вертолет МИ-8

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

Однако 60-е еще не отличались высоким уровнем стандартизации. В одних только аппаратных средствах корпорации IBM использовалось девять различных наборов кодировки символов.

«Безусловно, между компьютерами одного семейства нужно было наладить взаимодействие, — вспоминает Бемер, проработавший в IBM с 1956 по 1962 год. — Я говорил тогда: ?Послушайте, вы же не можете обмениваться информацией даже друг с другом!?»

Между тем взаимодействие между компьютерами стало настоятельной необходимостью. В 1961 году будущий изобретатель ASCII принял предложение представителей Американского национального института стандартов (ANSI). Возглавляемый вице-президентом компании Teletype Джоном Аувертером комитет ANSI X3.4, в котором была представлена большая часть производителей компьютеров, приступил к работе.

Комитету понадобилось свыше двух лет, чтобы проанализировать позиции всех сторон, найти компромисс и завершить разработку универсального кода. Одной из причин столь долгих дебатов стала борьба между интересами отдельных компаний. Комитет должен был решить, чей именно набор символов принять за основу. «Доходило до мелочных придирок, — рассказывает Бемер. — Но в конце концов Аувертер и я пожали друг другу руки, сказав: ?Пусть будет так?». По иронии судьбы конечный результат полностью совпал с первоначальным вариантом, который предлагал Бемер.

Если мы перенесемся на несколько лет вперед, то увидим, что дальше все пошло как по маслу. Сегодня на основе кода ASCII выпускается оборудование стоимостью в миллиарды долларов, большинство операционных систем (за исключением Windows NT, в которой применяется более новый стандарт) также до сих пор совместимо с ASCII.

Однако между изобретением кода ASCII в 1963 году и его всеобщим признанием лежала пропасть в 18 лет. Причиной такого развития событий стала корпорация IBM со своим семейством компьютеров System/360, появившимся в 1964 году. Пока стандарт ASCII находился в процессе разработки, все (в том числе и представители IBM) считали, что IBM должна перейти на использование нового кода. До той поры корпорация IBM отдавала предпочтение EBCDIC — расширению старого, еще перфокарточного кода.

Но после анонса ASCII и выпуска System/360 руководитель коллектива разработчиков OS/360 Фредерик Брукс заявил Бемеру, что перфораторы и принтеры не удастся модернизировать в установленный срок. Корпорация IBM попыталась реализовать возможность переключения компьютеров System/360 с кода ASCII на EBCDIC и обратно, но и из этого ничего не получилось.

До 1981 года, когда IBM наконец выпустила свой первый ПК и перешла на ASCII, единственным компьютером, использующим этот код, была модель Univac 1050, появившаяся на свет в 1964 году (правда, Teletype практически сразу перевела на ASCII все свои консоли). С этого момента код ASCII превратился в стандартное средство организации взаимодействия между различными компьютерами.

История развития ASCII будет неполной без рассказа об управляющих (escape) последовательностях. По мнению Бемера, именно удобством применения этих последовательностей во многом обусловлены успех и популярность ASCII. С самого начала члены комитета ANSI понимали, что описать все особенности взаимодействия различных систем при помощи 128 символов невозможно. Но в то время аппаратные ограничения не позволяли им выйти за пределы 7 бит.

Поэтому Бемеру пришлось специально разработать так называемые escape-последовательности, позволяющие компьютеру осуществлять переход с одного алфавита на другой. С 1963 года в мире было создано свыше 150 дополнительных алфавитов ASCII.

Наряду с Коболом код ASCII остался одной из немногих технологий, которой удалось успешно пройти сквозь десятилетия и дожить до наших дней.

События в области ИТ
  • Компьютер Univac I, проработавший более 73 тыс. часов, демонтирован и передан в дар Smithsonian Institution
  • Корпорация Tandy приобрела девять магазинов Radio Shack. Причем Чарлз Тэнди не потратил на покупку ни доллара. Radio Shack объявлена банкротом, Тэнди выразил готовность оплатить счета этой компании

  • Профессор Массачусетсского технологического института Джозеф Вайценбаум разработал программу Eliza
  • Корпорация Digital Equipment представила свой первый 12-разрядный компьютер PDP-5
  • Корпорация IBM ввела в употребление термин «текстовый процессор». Он используется при рекламе оборудования, предназначенного для записи речи
  • В США выпущено 4,5 млн. компьютерных микросхем. Восемь лет спустя в продажу поступит уже свыше 600 млн. микросхем
  • Иван Сазерленд разработал интерактивную компьютерную чертежную систему Sketchpad и защитил по ней диссертацию в Массачусетсском технологическом институте

В 1963 году родились:

  • Майкл Джордан — знаменитый баскетболист, звезда NBA
  • Гарри Каспаров — чемпион мира по шахматам, проигравший в 1997 году матч суперкомпьютеру IBM Deep Blue. Годом раньше Каспарову удалось одолеть эту машину
  • Михаил Борисов и Анатолий Шкред — президент и генеральный директор издательства «Открытые системы», выпускающего еженедельник Computerworld Россия

Другие события

  • Премия «Оскар» вручена Сидни Пуатье за фильм «Полевые лилии». Он стал первым «афро-американцем», удостоенным «Оскара»
  • СССP впервые произвел закупку зерна за границей

Поделитесь материалом с коллегами и друзьями