355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Александр Кондратов » Алло, робот » Текст книги (страница 7)
Алло, робот
  • Текст добавлен: 20 сентября 2016, 16:41

Текст книги "Алло, робот"


Автор книги: Александр Кондратов



сообщить о нарушении

Текущая страница: 7 (всего у книги 8 страниц)

Грамматика может хромать и у машины! Впрочем, машина здесь не виновата. Просто составители программы не включили нужное правило, вернее, исключение из правила. В самом деле, если фразы «я прыгаю», «я бегаю» во множественном числе будут «мы прыгаем», «мы бегаем», то почему бы «я могу» не стало во множественном числе «мы могем»? Машина так и сделала, подобно тому как иногда поступают и маленькие дети, обучающиеся языку. И дети, и электронная машина-переводчик добросовестно и последовательно соблюдают все правила языка и только потом узнают, что, кроме правил, есть еще и исключения из них.

ТЬМА-ТЬМУЩАЯ

Почти одновременно с опытом машинного перевода на БЭСМ был проделан и другой эксперимент на машине «Стрела» под руководством О. С. Кулагиной. Машина переводила с французского на русский язык. И хотя опыт Кулагиной не получил широкой известности, как опыт машинного перевода на БЭСМ, он имеет, по мнению специалистов, гораздо большее значение для дальнейших работ в области машинного перевода. Ведь первые переводы, сделанные с помощью электронной вычислительной машины, были лишь опытами. Для того чтобы поставить машинный перевод «на широкую ногу» (добиться, чтобы, вложив в машину книгу на одном языке, мы могли через некоторое время получать перевод на другом), предстоит много работы.

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

Одно и то же слово может иметь множество значений. В опытах по машинному переводу брались только те слова, которые имели одно, в крайнем случае, два значения. Но здесь возникает трудность – какие из значений выбрать? Машина переводит в полном смысле слова «автоматически», не понимая смысла текста. Какое, например, русское слово выбрать, переводя английское слово «instance», – «инстанция» или «пример»?

Для этого машина начинает «просматривать» окружение слова. Если перед «instance» стоит предлог «for», значит, нужно переводить сразу два слова: «for instance» – «для примера», «например», а не «инстанция».

Ну, а если таких грамматических и синтаксических показателей в окружении многозначного слова нет? Как быть тогда?

Приходится ориентироваться на другие признаки.

Например, английское «solution» может иметь два значения – «решение» и «раствор». Машина просматривает всю фразу, в которой встречалось это слово. Если в ней встречается слово «вопрос» или слово «проблема», то тогда она переводит «solution» русским словом «решение». Если же слов «вопрос» или «проблема» в фразе нет, то дает перевод «раствор».

Решение, конечно, грубое, но на первых порах пригодно и оно. Зато другие языковые тонкости и трудности даже приблизительно, в грубой форме преодолеть гораздо сложнее. Например, такую.

«Un joly papillon» по-французски значит «красивая бабочка». Можно сказать и несколько иначе: «Un papillon joly» – «бабочка красивая». Смысл фразы не изменится от перестановки слов. Но не всегда. Так, «un vrai conte» в переводе на русский язык – «настоящая сказка». A «un conte vrai» – «истинное происшествие», то есть с противоположным по смыслу значением. Как научить машину, переводящую с французского на русский, в одних случаях учитывать значимую перестановку слов, а в других – нет?

Еще пример. Лишь в одном случае из полутора тысяч существительное стоит после прилагательного. Казалось бы, порядок строгий и однозначный. Но только для научной речи. В обычном русском языке мы то и дело ставим прилагательное после существительного. «Друг дорогой», «тоска черная» и тому подобные обороты очень часты в нашей речи. Значит, правило «прилагательное стоит перед существительным» для перевода обычной прозы не годится.

А как быть с синонимами – словами, разными по звучанию, но одинаковыми по смыслу? Возьмем хотя бы одно простое слово «много». Тот же смысл в нашем языке имеют обороты и слова: «обильно», «видимо-невидимо», «по горло», «полон рот», «множество», «бездна», «уйма», «громада», «кипа», «целый короб», «целый лес», «прорва», «пропасть», «тьма», «тьма-тьмущая», «неисчислимое множество», «орава», «плеяда», «куча», «ряд», «сила», «масса» и т. д. и т. п. Как учесть эти слова?

Можно, конечно, все синонимы внести в «машинный словарь». Но какое из них выбрать при переводе английского слова «much»? Ведь они имеют разные оттенки смысла. Выражения «грибов в лесу – сила!» или «грибов в лесу много» в принципе значат одно и то же. Но по стилю различаются. Да к тому же и английское слово «much» имеет несколько значений.

Трудностей, как видите, действительно «тьма-тьмущая». И преодолевать их надо не на глазок, не приблизительно, а с математической точностью. Недомолвок и недочетов машина не признает. Один лишь программист, «хозяин» машины-переводчика, не может решить их. Нужна помощь языковеда.

Но языкознание не привыкло иметь дело с числами. Мел, бумага и доска – вот и вся лингвистическая техника. Слова языка, описательно объясняющие законы языка, – такова точность науки лингвистики.

Однако так было лишь до недавнего времени. Машинный перевод и другие задачи, связанные с кибернетикой, заставили языковедов обратиться к числам и формулам. Родилась математическая лингвистика – дисциплина, совмещающая две, казалось бы, далекие друг от друга науки: языкознание и математику.

СКОЛЬКО НУЖНО СЛОВ

«Наука только тогда достигает совершенства, когда ей удается пользоваться математикой», – сказал Карл Маркс в беседе с Полем Лафаргом. Числа нужны лингвистике, чтобы поставить науку о языке на уровень физики, астрономии и других точных наук. Не менее они нужны и практике. Прежде всего для машинного перевода.

В первом опыте машинного перевода словарь состоял из 250 слов. Это, конечно, мало для перевода книг. А сколько же слов не мало? Тысяча? 5 тысяч? 100 тысяч?

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

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

Помогает все та же статистика. С ее помощью составляются «частотные словари». По ним можно судить, какое слово употребительное, какое редкое и как редко или часто встречается оно в языке.

Методика составления этих словарей проста. Берется достаточно длинный текст (или несколько текстов). Затем подсчитывается, сколько раз встретилось в нем то или иное слово. Раньше эта процедура отнимала месяцы и годы. С помощью счетчиков-машин время, затрачиваемое на подсчеты, резко сократилось.

Но вот частотный словарь составлен. Длинный список, в котором либо в алфавитном порядке, либо по «популярности» идут слова и рядом – числа, показывающие, сколько раз встречаются эти слова в тексте.

Например, в «Капитанской дочке» А. С. Пушкина, состоящей из 29 тысяч слов, союз «и» употребляется более тысячи раз, предлог «в», второй по «популярности», 724 раза, и т. д. (заметим в скобках, что этот частотный словарь был составлен машиной).

Что же делать с этим списком дальше? Предположим, что 200 слов встречаются от 30 раз и более, 500 слов – более 10 раз, 2 тысячи слов – менее 5 раз. Ясно, что самые частые слова следует включить в словарь для машины, а редкие нужно устранить.

Но как определить границы? До каких пор считать слово частым, а до каких – редким? Отбросить слова, которые попадаются 5 раз и реже? А почему не отбросить слова, употребляющиеся менее 10 раз? Или, наоборот, включить в словарь для машинного перевода все слова, за исключением лишь тех, которые встречаются только 1 раз? Как найти правильные показатели?

Для ответа на этот вопрос нужно учесть так называемую «текстообразовательную способность» слов. 736 самых употребительных, самых частых английских слов, как установили подсчеты, занимают 75 процентов текста на английском языке.

1000 самых частых слов английского языка позволяют «покрыть» 80,5 процента английского, 83,5 процента французского, 81 процент испанского языков. Выучив эти слова или вложив их в «память» машины, мы можем знать 8 из 10 слов текста!

8 из 10! А если взять 2 тысячи самых частых слов? Может, мы будем тогда знать почти все слова? Оказывается, что такое удвоение позволяет не намного увеличить наше знание. Только 86 процентов текста «покроют» эти слова.

Ну, а 3 тысячи самых частых слов? Результат также не утешителен – около 90 процентов, 5 тысяч слов дадут возможность «покрыть» 93,5 процента текста, а десять тысяч – 96,4 процента. Слишком маленький коэффициент полезного действия при увеличении списка. Вероятно, целесообразно остановиться на первой тысяче самых частых слов, в крайнем случае на 5 тысячах слов, так чтобы из 100 слов только 6 были бы неизвестны.

В настоящее время преподаватели иностранных языков начинают использовать эти данные статистики, чтобы разумно составлять словари-минимумы. С помощью чисел можно ясно увидеть, какой запас слов надо давать ученикам на первой неделе занятий, на первом году обучения и т. д. Помогают эти числа и при составлении «машинных словарей», словарей для автоматического перевода.

ТОЛЬКО ЛИ СТАТИСТИКА!

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

Мы уже не раз говорили о статистике. Это неудивительно. Она играет очень важную роль в науке XX века. И ядерная физика, и биология, и антропология, и многие, многие другие науки о природе й человеке используют ее. Статистические методы применяются и в языкознании, и в изучении законов стихосложения.

Но, прежде чем начать подсчеты, всегда необходимо знать, что считать, какие элементы, какие единицы подлежат учету и подсчету. Вспомните о частотных словарях. Одним из первых, кто занялся их составлением, был известный американский статистик Удни Юл. В свободное время он увлекался средневековой литературой, написанной по-латыни. Филологи спорили, кто написал одно из любимых произведений Юла. И математику пришла в голову любопытная мысль: а что, если решить этот вопрос с помощью статистики?

Юл попытался сделать это... В результате появилась объемистая монография, посвященная вопросам языковой статистики. Примерно в то же время, в 40-х годах нашего столетия, статистическими законами языка занялся другой видный американский ученый – языковед Г. К. Ципф. И он пришел к несколько иным результатам, чем его коллега Удни Юл!

В чем же дело? Ведь законы статистики одни? Но... разгадка состоит в том, что, подсчитывая частоту слов – основу анализа, – они, по существу, исследовали разные явления, ибо под словом – единицей счета – подразумевались разные вещи. Юл считал словом то, что мы называем основой слова. Например, слова «стол», «стола», «столу», «столом» он считал одним словом.

Ципф же считал отдельным словом не только основу, но и все производные от нее словоформы. «Стол», «столу», «стола» и т. д. были для него разными словами.

При анализе пушкинской строки «глухой глухого звал на суд судьи глухого» Юл констатировал бы, что слово «глухой» встретилось три раза. А Ципф записал бы: слово «глухой» встретилось один раз и слово «глухого» два раза. Метод Ципфа был более удачен. На основании его был сформулирован так называемый «закон Ципфа», вызвавший первоначально удивление и сомнение, а затем восхищение лингвистов.

Математически он выглядит так:

Объясняется эта формула следующим образом. Подсчитайте на большом материале, сколько раз встречается то или иное слово. Запишите затем все частоты слов в список в порядке убывания частот: первым поставьте самое «популярное» слово, вторым – следующее за ним по частоте, и т. д., пока на последнем месте не окажется самое редкое слово. Список занумеруйте. И затем, если вы перемножите частоту слова на номер этого слова в списке (р на s), то получите постоянную величину!

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

Чем объясняется эта удивительная особенность нашего языка? Французский ученый Мандельброт объяснил «закон Ципфа» с помощью теории информации, заодно несколько уточнив его. Этот закон «отвечает стремлению к оптимальному распределению информации среди имеющихся в языке слов, с тем чтобы полностью использовать возможности данного кода», – писал он.

ФОРМУЛЫ ГРАММАТИКИ

Если бы Юл принял то определение, какое давал слову Ципф, он, вероятно, пришел бы к открытию этого закона Но, увы! У лингвистов нет точных критериев определения слова. Академик В. В. Виноградов в своей книге «Русский язык», вышедшей в конце 40-х годов, приводил около сорока различных определений, которые давали слову языковеды.

За время, истекшее с тех пор, к старым определениям прибавилось еще множество других: с позиции математической лингвистики, теории информации, теории множеств (например, слово – это минимальный промежуток между двумя пробелами). Попробуйте-ка выбрать подходящую «единицу счета» для составления частотного словаря и других статистических исследований!

Вот почему ученые задумались над тем, чтобы к изучению языка применить не только количественные, но и другие разделы математики. Ибо, по справедливому замечанию французского лингвиста Фердинанда де Сос-сюра, предтечи современного точного языкознания, «до сих пор в области языка довольствовались операциями над единицами, как следует не определенными».

Ольга Сергеевна Кулагина предложила применять математическую теорию множеств для определения грамматических понятий. Это было вызвано практическими причинами: необходимо было дать четкие критерии для машинного перевода. Но из прикладной эта задача вскоре стала на повестку дня языковедов-теоретиков.

Идея Кулагиной породила ряд работ как в математике, так и в лингвистике, посвященных «формулам грамматики», определению законов языка на основании теории множеств.

Специалист по математической логике В. А. Успенский, лингвист И. И. Ревзин, математик Р. Л. Добрушин предложили ряд «математико-грамматических» моделей языка. Академик А. Н. Колмогоров предложил свою математическую модель определения падежа (известный лингвист Р. О. Якобсон считает «определение падежа по Колмогорову» лучшим определением падежа, которое когда-либо было предложено в языкознании).

Возьмем две русские фразы, в каждой из них заменим многоточием какое-либо слово, например:

... кипит.

Кошка пьет ...

Теперь будем подставлять в каждую из фраз вместо многоточия какое-либо слово. Например, слово «молоко». Получим:

Молоко кипит.

Кошка пьет молоко.

Обе фразы осмысленны и грамматически правильны. Поставим теперь вместо многоточий какое-нибудь другое слово. Например, слово «вода». Получим:

Вода кипит.

Кошка пьет вода.

Для слова «молоко» обе фразы с точками равноценны, эквивалентны. И «молоко кипит», и «кошка пьет молоко» – правильные русские предложения. Но для слова «вода» первая фраза с точками подходит, а вторая – нет: «кошка пьет вода» по-русски не говорят. Значит, для слова «вода» фразы с многоточиями – «... кипит» и «кошка пьет ...» – неравноценны, неэквивалентны.

Возьмем теперь не две, а несколько фраз с многоточиями. В каждую из них подставим вместо точек слово «молоко». «... кипит», «кошка пьет ...», «кошка любит ...», «я смотрю на ...», «хорошее ...». Все эти фразы равны друг другу. Равны в том смысле, что в любую из них можно подставить слово «молоко» и получить осмысленную и грамматически верную фразу.

Все множество русских фраз с многоточиями можно разбить на непересекающиеся классы. Эти классы А. Н. Колмогоров и предложил называть падежами.

ЯЗЫК-ПОСРЕДНИК

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

А раз так, нельзя ли, опираясь на эти законы, создать некий универсальный язык? Язык, в котором бы нашли отражение закономерности всех живых языков мира?

Мысль о «всеобщем языке» с давних пор волнует многих людей. В самом деле, на земном шаре существует несколько тысяч различных языков. Чтобы преодолеть языковые барьеры, чтобы добиться взаимопонимания, сотням и тысячам людей приходится тратить драгоценное время на изучение чужого языка. Есть люди, владеющие сорока, пятьюдесятью, восемьюдесятью и более иностранными языками! И все же это лишь капля в многотысячном море языков.

Нельзя ли создать искусственным образом язык, который был бы понятен всем людям на Земле? Вспомогательный язык-посредник, на который любой человек может переходить при разговоре с иностранцами, к какой бы нации они ни принадлежали?

В настоящее время имеется почти полтысячи проектов всеобщего языка: «волапюк», «новиаль», «интерлингва», «блая-зимондаль», «ао», «эсперанто», «идо», «хабэ-абан», «оксиденталь» и много-много других. Некоторые из них, как, например, язык «ао», предложенный в 20-х годах анархистом Гординым, не получили никакого распространения. Но международным так и не стал ни один из этих искусственных языков, хотя многие из них обладали простотой и легкостью изучения, не в пример сложным живым языкам.

Оказывается, структура языка, его простота или трудность усвоения – не главное. Важнее другое – нужды общества, социальные причины. Японец или немец, турок или бразилец будет изучать сложный русский язык, а не простой эсперанто. Ведь техническая, научная, художественная литература издается на русском языке, а не на эсперанто. Точно так же поступают советские ученые и инженеры, изучая английский, французский, немецкий языки, очень сложный и трудный японский язык с его иероглифической письменностью. Химик и врач, металлург и математик, зная иностранные языки, могут и должны следить за текущей литературой по их специальности. А вся техническая, научная и тем более художественная литература, как мы уже сказали, выходит в свет не на искусственных, а на живых языках.

И все же идея всеобщего языка-посредника имеет смысл. Только не для людей, а для машин. В самом деле, иметь такой универсальный язык-посредник гораздо выгодней, чем составлять отдельные программы для машинного перевода с английского на русский, с немецкого на русский, с русского на немецкий и т. д. А чтобы перевести с немецкого на английский или с английского на немецкий, опять-таки нужна новая программа перевода, новый автоматический словарь. Добавится новый язык, допустим японский, нужны новые программы – японско-русская, английско-японская, русско-японская, нужны новые словари.

А ведь языков на свете несколько тысяч. Сколько же времени и сил отнимет составление программ и словарей!

Вот тут-то и нужен язык-посредник. Не эсперанто, разумеется, и не блая-зимондаль, а специальный язык-посредник для машин. Иностранный текст сначала переводится на этот язык. Затем с машинного языка-посредника можно переводить на любой другой язык мира.

Вспомните схему машинного перевода с английского на русский, которую мы приводили в начале главы: «ввод английского текста – анализ английского текста – синтез русского текста – выдача русского текста». С помощью языка-посредника не нужно составлять различных схем (а значит, и программ перевода) для разных языков. Схема получается единой, единая программа для любого языка:

«АТОМЫ СМЫСЛА»

Создать язык-посредник, конечно, очень трудно. Он должен вместить в себя все богатство нескольких тысяч языков, все грамматические формы, все падежи, суффиксы, приставки, формы единственного, множественного, двойственного и тройственного чисел.

Пока что такого удивительного языка-посредника для машинного перевода еще не существует. Но ученые разрабатывают различные проекты этого «всеобщего языка». Например,-создается «универсальная грамматика»: она должна показать самые общие законы, присущие всем языкам мира. Мы расскажем здесь лишь о наиболее увлекательной и многообещающей области машинного перевода. Это создание «языка смысла», с помощью которого ученые надеются научить машину понимать переводимый ею текст!

Как переводит человек с языка на язык? Разумеется, по смыслу. Поиск в словаре нужных слов – это важная, но отнюдь не главная часть перевода. И она, как вы сами убедились, легко автоматизируется. Но как автоматизировать перевод по смыслу?

Решить эту, казалось бы, неразрешимую задачу помогают так называемые «смысловые множители».

«Паровоз», «пароход», «самолет», «вездеход», «вертолет»... Состав этих сложных слов ясен. Ясны и те «единицы смысла», из которых образуется их значение. Ну, а если взять не сложные слова, а простые? Можно ли в них найти «единицы смысла»? Или, может быть, значение отдельного слова (разумеется, простого, а не сложного) как раз и является тем самым «атомом смысла», из которого затем строятся «молекулы» сложных слов и целых предложений?

Этим вопросом занялись сотрудники лаборатории машинного перевода при Первом московском педагогическом институте иностранных языков. По их предположению, «атомом смысла», является не слово, а более мелкие единицы – «смысловые множители».

Вот как выявлялись эти «атомы смысла». Сначала брали два одинаковых по значению высказывания. Например, «он недомогает» и «он нехорошо себя чувствует».

Затем из этих фраз извлекали смысловые множители. Первый– «отрицание» (из слова «нехорошо»); второй – «положительность» (из того же слова); третий – «ощущение» (из слова «чувствовать»). Значение слова «недомогать» можно тогда выразить как сочетание трех смысловых множителей: «отрицание» – «положительность» – «ощущение».

Точно так же можно записывать смысл и других слов, и целых фраз, после того как извлечены другие смысловые множители, новые «атомы смысла». Например, слова «да», «конечно», «так», «верно», «истинно», «правильно», «ей-ей», «как же», «совершенно верно», «именно», «согласен» записываются одним семантическим множителем – «утверждение». Из одних и тех же смысловых множителей могут состоять не только слова, но и целые фразы.

Например, приведенные нами фразы: «он недомогает», «он нехорошо себя чувствует» и, кроме них, «плохо себя чувствует» – имеют одни и те же смысловые множители:

«отрицание» – «положительность» – «ощущение». «Он болеет»: «отрицание» – «положительность» – «ощущение»

(ведь болезнь – это и есть отрицание «хорошего чувствования»), «Он занемог» – те же множители, и т. д. Иногда число фраз, составленных из одних и тех же «атомов смысла», может доходить до четырехсот – настолько богат русский язык.

Зная «атомы смысла», машина-переводчик может анализировать текст, записывать его в виде единиц смысла. Затем мы можем дать ей команду записать этот же смысл, но уже в виде слов другого языка. Ведь основные «атомы смысла», вроде приводимых нами «отрицание» – «положительность» – «ощущение», во всех языках мира одни и те же. Подобно тому как бесконечное многообразие нашего мира строится из «горстки» атомов и молекул, бесконечное многообразие фраз и слов всех языков мира строится из небольшого количества «атомов смысла». Они-то и могут быть «словами» машинного языка-посредника.

Более того: осуществляя перевод с помощью смысловых множителей, машина, по существу, делает то же, что и человек-переводчик, – она переводит по смыслу!

Поиск «атомов смысла» только начат. Часть слов как русского, так и других языков мира потребует особой записи. Например, собственные имена, названия видов животных и растений, домашней утвари, вероятно, будут записываться не в виде смысловых множителей, а обозначаться номерами. Эти номера будут храниться в «памяти» машины.

Большие трудности доставят ученым и стилистические особенности речи. На языке смысловых множителей фразы «ничтожный человек», «маленький человек», «человечек», «ничтожество», «человек без способностей», «бездарность» будут записывать одними и теми же «атомами смысла». Но любому ясно, что это не совсем так – эмоциональная окраска придает словам и фразам различные оттенки смысла, увы, пока что невыразимые в «атомах смысла».

Впрочем, никто и не пытается автоматизировать перевод эмоциональной, обыденной речи. А тем более поэзии и художественной прозы. Перевод научной и технической литературы с помощью электронных вычислительных машин – такова задача сегодняшнего дня. И, как замечает один из пионеров машинного перевода Уоррен Уивер, «Пушкин может не беспокоиться»,

«ОРГАНЫ ЧУВСТВ» АВТОМАТОВ

МЫ ГОВОРИЛИ о машине-переводчике. И добавляли: автоматический перевод делает электронная вычислительная машина. Вычислительная, ибо технически весь процесс перевода для машины не отличается от других счетных операций.

Например, ей нужно перевести какое-либо слово. Изо всех чисел, которыми закодированы слова ее автоматического словаря, машина начинает вычитать это слово – ведь и оно записано как число! Если остаток при вычитании равен нулю, значит, нужное слово найдено. Операция, конечно, долгая: если в словаре тысяча слов, нужно сделать чуть ли не тысячу вычитаний, пока не наткнешься на нужное. Но ведь и сто тысяч арифметических действий в секунду – не предел для современных вычислительных машин. Необходимые сто, или тысяча, или 10 тысяч вычитаний она проделает за ничтожную долю секунды.

И автоматический словарь, и программа перевода хранятся в «памяти» машины в виде чисел. Мы уже рассказывали, что сделать такой перевод, вернее, кодирование очень легко. Но как ввести эти числа в машину, как превратить их в импульсы электрического тока?

Очевидно, нужно наделить «электронный мозг» машинными «органами чувств». Электрический глаз фотоэлемента – машинное зрение, чуткое «ухо» микрофона – слух. Американские инженеры сконструировали даже «электронный нос» – специальное устройство, которое позволяет машине различать запахи. (Этот «нос» может оказать большую помощь химикам, чутко улавливая ход различных реакций по запаху веществ.)

Примерно 90 процентов всей информации наш мозг получает от зрения, от всех остальных органов чувств – около 10 процентов. Львиная доля из этих десяти процентов приходится на слух. Осязание и обоняние находятся на последнем месте, доставляя ничтожную часть информации. А для электронного мозга единственный «канал связи» – это машинное «осязание». Благодаря ему вводится в машину последовательность чисел, будь это программа или задание.

ПЕРФОКАРТЫ

В начале прошлого века француз Жозеф Жаккар усовершенствовал работу ткацкого станка. Чтобы изготовить ткани со сложным узором, станком приходилось управлять опытному мастеру. Французский изобретатель решил автоматизировать этот процесс.

В плотных картонных картах были пробиты отверстия – они обозначали порядок работы машины. Карты проходили под специальными щупами. Попав в одно из отверстий, щуп опускался и перемещал нити на ткацком станке. В результате карта с отверстиями как бы управляла перемещением нитей. Можно было получать любые сложные узоры автоматически. Такой способ управления получил название «перфорационный», «дырочный». А карты, на которых пробиваются «управляющие отверстия», стали называть перфокартами.

Почти во все современные вычислительные машины информацию вводят с помощью перфокарт. Конечно, они отличаются от тех «управляющих картонов», которыми пользовался Жозеф Жаккар. Но принцип «чтения» с помощью специальных щупов остался тот же, что и во времена наполеоновских войн, когда Жаккар сделал свое изобретение.

Все числа, которые нужно ввести в машину, набиваются на перфокарту. Как правило, это стандартный прямоугольник из плотной бумаги, на котором напечатана цифровая сетка:

Так, по 80 цифр в ряд, на перфокарте напечатаны нули, единицы, двойки, тройки, четверки, пятерки, шестерки, семерки, восьмерки и девятки. Между рядами восьмерок и девяток есть добавочный ряд – нумерация колонок:

8888888888888888...

123456789 и т. д.

до 80 9999999999999999...

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

Проходя через него, пробитые на карте отверстия «читаются», подобно тому как они «читались» в изобретении Жаккара: в пробивку проваливается щуп. Это оказывает на механизм электронной машины такое же действие, как включение контакта или нажатие клавиш. Если есть пробивка, ток идет. Нет пробивки – нет тока. Числа задания и числа программы переводятся на «язык электричества».

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

Машина автоматически выражает эти импульсы тока в своем обычном коде – двоичной системе нулей и единиц. Программа работы входит в «память». Специальный счетчик дает сигнал: «конец ввода». Последний раз человек вмешивается в работу «электронного мозга»: с пульта управления нажимает кнопку «начальный пуск». И машина автоматически работает по программе.

Результаты вычислений – а этими вычислениями, повторяем, могут оказаться и перевод с языка на язык, и игра в шахматы, и выбор наилучшего плана в экономике, и многое, многое другое – вновь переводятся с «электронного языка» на перфокарты. Оттуда они поступают на печатающее устройство. Двоичные числа переводятся в десятичные – работа машины окончена. Вот как выглядит итог работы, отпечатанные результаты счета:


    Ваша оценка произведения:

Популярные книги за неделю