MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_NextPart_01C6D999.A70CDEA0" Данный документ является веб-страницей в одном файле, также называемой файлом веб-архива. Если вы видите это сообщение, значит данный обозреватель или редактор не поддерживает файлы веб-архива. Загрузите обозреватель, поддерживающий веб-архивы, например Microsoft Internet Explorer. ------=_NextPart_01C6D999.A70CDEA0 Content-Location: file:///C:/D0C89E97/inf37.htm Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="us-ascii" ЯЗЫКИ ПРОГРАММИРi= 4;ВАНИЯ

ЯЗЫКИ ПРО= ;ГРАММИРОВА = 53;ИЯ

Для того чтобы ЭВМ могла выполнять программу, программа должна быть записана по строгим правилам в виде, доступном для обработ = 82;и на ЭВМ.

Еще до окончани = 03; постройки 1-ой ЭВМ "Э&#= 1053;ИАК" в США в 1943-1946, в которой вычисления производилl= 0;сь электронныl= 4;и блоками, а программа задавалась = 74;ручную, с помощью механическl= 0;х переключатk= 7;лей, видный американскl= 0;й ученый фон Н= 077;йман предложил более прогрессивl= 5;ую конструкциn= 2;, в которой:

-      =   в памяти ЭВМ хранятся не только числ = 72;, но и сама программа;=

-      =   и то, и др. храни= тся в виде двоичных чисел.

Программа для такой машины записываетl= 9;я на так называемом машин= 085;ом языке, т. е. представляk= 7;т собой последоватk= 7;льность двоичных чисел. Придумыватn= 0; и записыват = 00; программу н = 72; машинном языке неудобно, по= 101;тому фон Нейман предложил н = 72; начальном этапе разработки программы и = 89;пользовать блок-с= ;хему - графическуn= 2; форму запис = 80; алгоритма. Блок-схему затем переводили на машинный язык. Это нудная и долгая работа не обходилась без ошибок, которые был = 86; очень непросто найти.

Поэтому возникла идея записывать программу н = 72; так называемом языке программисm= 0;а, а перевод с языка программисm= 0;а на язык ЭВМ поручать самой ЭВМ.

Термин язык программисm= 0;а не прижился и, вместо него, стали говорить алгоритми = 95;еский язык или язык программирl= 6;вания.

Набор правил, по ко&#= 1090;орым закодироваl= 5;а программа, называется языком программирl= 6;вания или алгорит = 84;ическим языком. Язык= 080; программирl= 6;вания - специально разработанl= 5;ые искусственl= 5;ые языки, предназначk= 7;нные исключителn= 0;но для записи алгоритмов, исполнение которых пор = 91;чается ЭВМ.

Описание любого язык = 72; включает в себя алфавит, синтаксис и семантику.

Алфавит= ; - набор символов (букв, цифр, специальныm= 3; знаков и т.д.), которые могут быть использоваl= 5;ы при написании программы.=

Синтакс= ;ис - правила построения из символов алфавита сп = 77;циальных конструкциl= 1;, с помощью которых составляетl= 9;я алгоритм.=

Семанти= ;ка - система правил толкования этих конструкциl= 1;.

Таким образом, программа составляетl= 9;я с помощью соединения символов  алфавита в соответствl= 0;и с синтаксич = 77;скими правилами и = 089; учетом правил сема = 85;тики.

Каждый язык программирl= 6;вания имеет свой а= 083;фавит, в котором по= 076; буквами понимается = 74;се символы, использующl= 0;еся для записи в= 099;ражений. В каждом из языков действует своя грамма = 90;ика (синтаксис) - четкие правила обр = 72;зования слов и фраз на этом языке. Словарь люб = 86;го из языков очень мал по объему.

Один из первых языков программирl= 6;вания – Фортран(For<= /b>mula= Ttanslation) был создан в середине 50-х годов. Благодаря с = 74;оей простоте и тому, что на этом языке накоплены большие библиотеки программ Фортран и в наши дни ост= 072;ется одним из самых распростраl= 5;енных. Используетl= 9;я для инженерных = 80; научных расчетов, дл= 103; решения задач физик = 80; и других нау= 082; с развитым математичеl= 9;ким аппаратом.

В 1960 году был создан язык Алгол-60 ориентировk= 2;нный на научно-техн = 80;ческие задачи.

Для решения экономичесl= 2;их задач был создан язык программирl= 6;вания - Кобол.

Расширение областей применения ЭВМ влечет з= 072; собой создание языков ориентировk= 2;нных на новые сферы применения: Снобол - для обработки текстовой информации, Лисп - для обработки символов.=

Появляются языки прl= 6;граммирова= 085;ия предназначk= 7;нные для обучени = 03;.

В 1968 г. был объявле = 85; конкурс на лучший язык программирl= 6;вания для обучени = 03; студентов. Победителеl= 4; стал язык Алго= ;л-68, но широкого распростраl= 5;ения не получил. Д&#= 1083;я этого конкурса Никлаус Вирт создал = 103;зык Паскаль, достаточно простой, удобный, с наличием мо = 97;ных средств структуриl= 8;ования данных. Хотя Паскаль был разработан как язык для обучения программирl= 6;ванию, он впоследствl= 0;и получил широкое раз = 74;итие и в настояще= 077; время считается о = 76;ним из самых используемm= 9;х языков. Для обучения младших школьников Самуэлем Пайперто = 84; был разработан язык Лого. Он отличается простотой и богатыми возможностn= 3;ми (содержит процедуры, графическиk= 7; средства и т. д.). Широкое распростраl= 5;ение в школах в качестве обучающего языка получ = 80;л язык Бейсик, позволяющиl= 1; взаимодейсm= 0;вовать с ЭВМ в режим&#= 1077; непосредстk= 4;енного диалога.

Необходимо= ;сть разработки больших программ, управляющиm= 3; работой ЭВМ (системных п= 088;ограмм), потребовалk= 2; создания специальноk= 5;о языка программирl= 6;вания СИ в начале 70-х г. = 54;н является одним из универсальl= 5;ых языков прог = 88;аммировани&#= 1103;. Появление функционалn= 0;ного программирl= 6;вания привело к созданию языка Проло= 075;. Этот язык программирl= 6;вания разрабатывk= 2;лся для задач анализа и понимания естественнm= 9;х языков на основе язык = 72; формальной = 83;огики и метода автоматичеl= 9;кого доказательl= 9;тва теории. В 80-Х г. был создан язык Ада, названый в честь перво = 81; женщины - программисm= 0;а Ады Лавлейс, дочери Байрона. Это= 090; язык в дополнение = 82; классическl= 0;м свойствам, о= 073;еспечивает программирl= 6;вание задач реаль = 85;ого времени, моделироваl= 5;ия параллельнl= 6;го решения задач. Язык Рефал (создан В.&#= 1058;урчиным) использует мощные средства преобразовk= 2;ния списков (символьная информация) на основе концепции распознаваl= 5;ия по образу. С м&= #1086;мента появления первых языков в 1952-1954 г.&= #1075;. и до настоящего времени во всем мире зарегистриl= 8;овано более 2000 языков. Реально используетl= 9;я около 200, а широкое распростраl= 5;ение получили около 20, среди них вышеназванl= 5;ые языки.

Системы программирl= 6;вания предназначk= 7;ны для создани = 03; программ управления компьютероl= 4;.

Системы программирl= 6;вания позволяют использоваm= 0;ь на ЭВМ программы, написанные на языке более высокого уровня, чем язык машинн = 99;х команд.

Понятие уровня язык = 72; программирl= 6;вания связано со степенью ег = 86; удаленностl= 0; от языка процессора ЭВМ и приближеннl= 6;сти к естественнl= 6;му человеческl= 6;му языку, к форм&#= 1072;льному языку предметной области (чащ= 077; всего - математики). Чем выше уровень, тем дальше от ЭВ= 052; и ближе к человеку. Этот принци = 87; схематичесl= 2;и отражает рисунок.

Естест&#= 1074;енный язык, язык математики<= o:p>

 
 <= /p>

 

 

 <= /p>

 

 

 

 

 

 

 

 


Язык машинных команд – это язык самого низкого уровня. Первые язык = 80; программирl= 6;вания, отличаются от ЯМК, появились н = 72; машинах первого поколения и = 085;азывались Автокодами.

Автокод – это машинн= 086;е – ориентировk= 2;нный язык символичесl= 2;ого программирl= 6;вания.

Одна команда на Автокоде соответствm= 1;ет одной машинной команде. Работая на Автокоде, программисm= 0; освобожден от необходимоl= 9;ти распределяm= 0;ь память под программу и величины, ем= 091; не приходится работать с адресами ячеек. Переменные величины и числовые константы обозначаютl= 9;я так же как в м&= #1072;тематике, коды операц = 80;й- мнемоничесl= 2;ими (буквенными) обозначениn= 3;ми.

Начиная с машин третьего поколения, языки таког = 86; типа стали называть Ассемблераl= 4;и. В наше время на Ассембле = 88;е программирm= 1;ют довольно редко, это, как правило, делают системные программисm= 0;ы.

Сокращение ЯПВУ расшифровыk= 4;ается так, языки программирl= 6;вания высокого уровня. Сегодня большинствl= 6; программисm= 0;ов работают именно на этих языках. Наиболее распростраl= 5;енными являются языки Паскаль, Бейсик, СИ, Фортран.

Вот пример записи одно = 81; и той же команды сло = 78;ения двух чисел н= 072; трех языках разного уро = 74;ня, ЯМК, Автокод, Паскаль.

        =             &nb= sp;            =             C:=3D A+<= span lang=3DEN-US style=3D'font-size:12.0pt;mso-ansi-language:EN-US'>D  Паска= ль

        =             &nb= sp;                  =  ADD<= span lang=3DEN-US style=3D'font-size:12.0pt'> A,B,<= span lang=3DEN-US style=3D'font-size:12.0pt;mso-ansi-language:EN-US'>C  Авток= од

        =             &nb= sp;            =      01 24 28         =   ЯМК<= /p>

Видно, как с повышением уровня язык = 72; повышается «понятностn= 0;» команд (по–английск = 80; слово ADD ознk= 2;чает «сложить»). Однако, чем понятнее дл = 03; человека, те= 084; непонятнее для процессора ЭВМ. Процессор понимает только Я = 52;К, это его «родной язык». Человеку же легче писат = 00; программы н = 72; языках боле = 77; высокого ур = 86;вня.

Как сделать так, чтобы человек мог писать прог = 88;аммы на Автокоде или Паскале, а компьютер мог исполнять эти програм = 84;ы? Ответ на поставленнm= 9;й вопрос тако = 81; же, как ответ на вопрос: «как мне общаться с японцем, есл= 080; я не знаю японского языка?». Нужен перев = 86;дчик, по-английск = 80; переводчик R= 11;translator<= /span>.

Программы-l= 7;ереводчики с Автокода, Паскаля, Фортрана и других языков на язык машинных команд называются трансляторk= 2;ми.

Таким образом, компьютер сам производит = 87;еревод под управлениеl= 4; программы- трансляторk= 2;. Процесс перевода программы н = 72; язык машинн = 99;х команд называется трансляциеl= 1;. Прежде чем выполнить, например, программу н = 72; Паскале, ее нужно оттранслирl= 6;вать. Трансляцию = 84;ожно представитn= 0; как спуск с верхней сту = 87;еньки языка на самую перву = 02; ступеньку - ЯМК.

 

C:=3DA+B = ПАСКАЛ&#= 1068;

 

 
        =    Трансляциn= 3; с Паскаля=

 


ADD A, B,C АВТОКО&#= 1044;

 
        =              Тран= ;. с автокода =

 <= /p>

 

 

 

 


Транслятор является обязательнm= 9;м элементом любой системы программирl= 6;вания. Первые СП включали в себя только трансляторm= 9;. Затем к трансляторm= 1; стали добавлятьсn= 3; различные сервисные средства, текстовые р = 77;дакторы, отладчики, с= 080;стемы обслуживанl= 0;я программныm= 3; библиотек, средства организациl= 0; дружественl= 5;ого интерфейса = 89; пользоватеl= 3;ем.

Транслятор - это посредник, работающий = 89; исходными текстами программ. Ра= 089;смотрим программ= ;у-компилято= 088; и программу-и = 85;терпретато&#= 1088;. Программа-к = 86;мпилятор (от слова compile - состав= 083;ять, собирать) переводит исходный те = 82;ст в машинный код и записывает его на диск в форме исполняемоk= 5;о (загрузочно = 75;о) файла. После этого программа выполняетсn= 3; независимо от исходног = 86; текста.

Программа-l= 0;нтерпретат= 086;р всегда работает совместно с исходным текстом. Она разбирает к = 72;ждую инструкцию исходного текста (инте= 088;претирует ее) и немедленно исполняет (т.&#= 1077;. файл на маши= 085;ном языке не создается). П&#= 1088;ограмма в режиме интерпретаm= 4;ии работает гораздо медленнее, чем такая же программа в машинном коде. Это связано с тем, что каждую инструкцию приходится = 88;азбирать во время выполнения (= 072; не заранее, к&#= 1072;к при компиля = 94;ии). Многие инст = 88;укции в программе = 074;ыполняются многократнl= 6;, - и при каждом выполнении интерпретиl= 8;уются заново. Но интерпретаm= 4;ия имеет и свои преимущестk= 4;а: с ее помощью проще отлаживать программу. И= 085;огда пользуются режимом «псевдоинте&#= 1087;ретации»: ускоряют интерпретаm= 4;ию за счет предваритеl= 3;ьного запоминаниn= 3; тех или иных элементов разобранныm= 3; команд в памяти машины.

В наше время машинные коды не используютl= 9;я, и каждая про= 075;рамма для компьютера составляетl= 9;я на том или ин&#= 1086;м языке программирl= 6;вания. Существует очень много языков, однако все они, как правило, содержат средства описания данных, арифметичеl= 9;кие операторы, средства уп = 88;авления и организац = 80;и циклов, средства ввода и выво= 076;а информации. = 052;ногие языки пользуются похожими принципами организациl= 0; программ, но - разным синт = 72;ксисом.

Слова и синтаксис языков прог = 88;аммировани&#= 1103; придумываюm= 0;ся искусственl= 5;о. Поэтому не следует стр = 77;миться к изучению как можно большего числа языко = 74;. Программирl= 6;вания. Их можно знать, но знать и владеть - не одно и то же. Изучив о&#= 1076;ин язык, можно усвоить главное - идеологию программирl= 6;вания. При необ&#= 1093;одимости можно легко перейти на другой язык, однако для продуктивнl= 6;й работы в нем придется довести до автоматизмk= 2; навыки правильногl= 6; написания команд, освоить мно = 78;ество функций, соглашений, умолчаний и других тонкостей, характерныm= 3; для этого языка.

------=_NextPart_01C6D999.A70CDEA0 Content-Location: file:///C:/D0C89E97/inf37.files/image001.gif Content-Transfer-Encoding: base64 Content-Type: image/gif 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 hCp0oQy1AAAKAAA7 ------=_NextPart_01C6D999.A70CDEA0 Content-Location: file:///C:/D0C89E97/inf37.files/image002.gif Content-Transfer-Encoding: base64 Content-Type: image/gif R0lGODlh0ABVAHcAMSH+GlNvZnR3YXJlOiBNaWNyb3NvZnQgT2ZmaWNlACH5BAEAAAAALAIAAgDO AFEAgAAAAAAAAAL/hI8Qye0Po5y02ouzPqHvD4biSJZJh5rqyrYuhMbvTNe2FOf6zvf+DwwKh8Si 8XjkGHS3pvO5WnBS0Kr1SpEiPNiut6v9isfWMPmMnpnT7PZo7Y7LLfC5/c6o4/d2Pf/f5gc4SCZI eAiGqIhmuOh40/go+RI5aalSeakpkrnpqdH5KVoROmoKc5oaUqraquAKSxc7i0Nr68B665mrq8nb a/kLLCk87FhsrIicfLjMPOj8/BctvUddfXeNPae9HdftHRieCj7OaG5ajj6mvv7V7p4Yvwk/X2bv i39Zr+/E3w8JIDGBj/4RVHNwkcGELRYyjPKwWURCDieSqGiRU8ZpLBv5YOy44SPIDCJHXihpklRK NzxWntnhklGOmC9l0KzJ5Sa7nDp39nz5U0wBADs= ------=_NextPart_01C6D999.A70CDEA0 Content-Location: file:///C:/D0C89E97/inf37.files/image003.gif Content-Transfer-Encoding: base64 Content-Type: image/gif R0lGODlhfAFRAHcAMSH+GlNvZnR3YXJlOiBNaWNyb3NvZnQgT2ZmaWNlACH5BAEAAAAALAIAAgB3 AU0AgQAAAAAAAP///wECAwL/hI+py+0Qnpy02ouz3rz7D4biFpTjiabqyrbuy5YyTNf2jee6KPf7 DwwKh0RL74hMKpfMpvMJVRan1KouAjlat9yu93vAGnzgsvmMjilM6bb7DXeI4/S6PT2/6/f8Yb4P GCioNlhoeNjxh7jI2DjmCBl5qChZaQlHeam5+ZXJ+QlK5BlKWnozapqqqoK66vqaCCs7C9JKe4uL YJvLO7vbC7z6G0xMOlyMvHmczCy53AzN+BxNXThdjd13nc1tt90N/vYdTn42Xo7udZ7OXpTUDo+J FE/fplWPrxG1z9/v/w8woMCBBAsaPIgw4T4BDBs6fAgxosSJAmRQvIgxo8aN/xw7evwIMqTIkSRL mvRY4uRHiypbunwJM6bMmTRnpqw5MQDOnTx7+vwJFOfNoDqDGj2KNKnSnUOXOn0KNarUpE2nWr2K NatWjFW3ev0KNuzPrmLLmj2LtiPZtGzbuhW79iHZohFZQqQrt2oPiXYd7sX7luMSvkkY9g3sNm7D ongPL36cty7kin7vTjbsFzBirpe7NqXLeHNgxZQvl7bc+XRlyI1RY369WjTnzpo/m5bNlnTr2BRb a0a9Oyds3rj58tbpO/bv4mZ1E18ul/Xs0tClM0eZOrn167mrqwbs/TToi+DDj+eutm9ozI1Jo/fq 3LT388Ndv64e/H3G9ff7P8oOr19W8dWHX2ZHGHccgrcFKNlw6/FHHYPNzfeccBba52CD0W0oYX6g 0SeehHCZV59qCXJ4Yn4Zpibidye6uGCLVrlXUW1zHYjiYjjWeONeBgIo21BMsDcYjzJqReORSi4J VpJMPgmlVE5GSWWVRk1pZZZa0oTlll5+aVKXYI5JpmBAlolmmuSdqWabbtb4Zpxy1sXmnHZqKead ej6Z555+ytjnn4IGGOighl5X6KGKipbooo4mVuejkiKmUKWWXopppppuymmnABUAADs= ------=_NextPart_01C6D999.A70CDEA0 Content-Location: file:///C:/D0C89E97/inf37.files/filelist.xml Content-Transfer-Encoding: quoted-printable Content-Type: text/xml; charset="utf-8" ------=_NextPart_01C6D999.A70CDEA0--