Когда и как появились первые программы. Кто придумал первый компьютерный вирус? Никто, кроме нас

В конце XIX века Герман Холлерит в Америке изобрел счетно-перфорационные машины. В них использовались перфокартыдля хранения числовой информации.

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

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

Г. Холлерит основал фирму по выпуску счетно-перфорационных машин, которая затем была преобразована в фирму IBM - ныне самого известного в мире производителя компьютеров.

Непосредственными предшественниками ЭВМ были релейные вычислительные машины.

К 30-м годам XX века получила большое развитие релейная автоматика, которая позволяла кодировать информацию в двоичном виде.

В процессе работы релейной машины происходят переключения тысяч реле из одного состояния в другое.

В первой половине XX века бурно развивалась радиотехника. Основным элементом радиоприемников и радиопередатчиков в то время были электронно-вакуумные лампы.

Электронные лампы стали технической основой для первых электронно-вычислительных машин (ЭВМ).

Первая ЭВМ - универсальная машина на электронных лампах построена в США в 1945 году.

Эта машина называлась ENIAC (расшифровывается так: электронный цифровой интегратор и вычислитель). Конструкторами ENIAC были Дж.Моучли и Дж.Эккерт.

Скорость счета этой машины превосходила скорость релейных машин того времени в тысячу раз.

Первый электронный компьютер ENIAC программировался с помощью штеккерно-коммутационного способа, то есть программа строилась путем соединения проводниками отдельных блоков машины на коммутационной доске.

Эта сложная и утомительная процедура подготовки машины к работе делала ее неудобной в эксплуатации.

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

В 1946 году в журнале «Nature» вышла статья Дж. фон Неймана, Г. Голдстайна и А. Беркса «Предварительное рассмотрение логической конструкции электронного вычислительного устройства».

В этой статье были изложены принципы устройства и работы ЭВМ. Главный из них - принцип хранимой в памяти программы, согласно которому данные и программа помещаются в общую память машины.

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

В 1949 году была построена первая ЭВМ с архитектурой Неймана - английская машина EDSAC.

Годом позже появилась американская ЭВМ EDVAC. Названные машины существовали в единственных экземплярах. Серийное производство ЭВМ началось в развитых странах мира в 50-х годах.

В нашей стране первая ЭВМ была создана в 1951 году. Называлась она МЭСМ - малая электронная счетнаямашина. Конструктором МЭСМ былСергей Алексеевич Лебедев

Под руководством С.А. Лебедева в 50-х годах были построены серийные ламповые ЭВМ БЭСМ-1 (большая электронная счетная машина), БЭСМ-2, М-20.

В то время эти машины были одними из лучших в мире.

В 60-х годах С.А.Лебедев руководил разработкой полупроводниковых ЭВМ БЭСМ-ЗМ, БЭСМ-4, М-220, М-222.

Выдающимся достижением того периода была машина БЭСМ-6. Это первая отечественная и одна из первых в мире ЭВМ с быстродействием 1 миллион операций в секунду. Последующие идеи и разработки С.А. Лебедева способствовали созданию более совершенных машин следующих поколений.

Электронно-вычислительную технику принято делить на поколения

Смены поколений чаще всего были связаны со сменой элементной базы ЭВМ, с прогрессом электронной техники.

Это всегда приводило к росту вычислительной мощности ЭВМ, то есть быстродействия и объема памяти.

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

Первое поколение ЭВМ - ламповые машины 50-х годов. Скорость счета самых быстрых машин первого поколения доходила до 20 тысяч операций в секунду (ЭВМ М-20).

Для ввода программ и данных использовались перфоленты и перфокарты.

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

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

Программы для таких машин составлялись на языках машинных команд. Это довольно трудоемкая работа.

Поэтому программирование в те времена было доступно немногим.

В 1949 году в США был создан первый полупроводниковый прибор, заменяющий электронную лампу. Он получил название транзистор. Транзисторы быстро внедрялись в радиотехнику.

Второе поколение ЭВМ

В 60-х годах транзисторы стали элементной базой для ЭВМ второго поколения .

Переход на полупроводниковые элементы улучшил качество ЭВМ по всем параметрам: они стали компактнее, надежнее, менее энергоемкими

Быстродействие большинства машин достигло десятков и сотен тысяч операций в секунду.

Объем внутренней памяти возрос в сотни раз по сравнению с ЭВМ первого поколения.

Большое развитие получили устройства внешней (магнитной) памяти: магнитные барабаны, накопители на магнитных лентах.

Благодаря этому появилась возможность создавать на ЭВМ информационно-справочные, поисковые системы.

Такие системы связаны с необходимостью длительно хранить на магнитных носителях большие объемы информации.

Во времена второго поколения активно стали развиваться языки программирования высокого уровня. Первыми из них были ФОРТРАН, АЛГОЛ, КОБОЛ.

Составление программы перестало зависеть от модели машины, сделалось проще, понятнее, доступнее.

Программирование как элемент грамотности стало широко распространяться, главным образом среди людей с высшим образованием.

Третье поколение ЭВМ создавалось на новой элементной базе - интегральных схемах. С помощью очень сложной технологии специалисты научились монтировать на маленькой пластине из полупроводникового материала, площадью менее 1 см, достаточно сложные электронные схемы.

Их назвали интегральными схемами (ИС)

Первые ИС содержали в себе десятки, затем - сотни элементов (транзисторов, сопротивлений и др.).

Когда степень интеграции (количество элементов) приблизилась к тысяче, их стали называть большими интегральными схемами - БИС; затем появились сверхбольшие интегральные схемы - СБИС.

ЭВМ третьего поколения начали производиться во второй половине 60-х годов, когда американская фирма IBM приступила к выпуску системы машин IBM-360. Это были машины на ИС.

Немного позднее стали выпускаться машины серии IBM-370, построенные на БИС.

В Советском Союзе в 70-х годах начался выпуск машин серии ЕС ЭВМ (Единая Система ЭВМ) по образцу IBM-360/370.

Переход к третьему поколению связан с существенными изменениями архитектуры ЭВМ.

Появилась возможность выполнять одновременно несколько программ на одной машине. Такой режим работы называется мультипрограммным (многопрограммным) режимом.

Скорость работы наиболее мощных моделей ЭВМ достигла нескольких миллионов операций в секунду.

На машинах третьего поколения появился новый тип внешних запоминающих устройств - магнитные диски .

Как и на магнитных лентах, на дисках можно хранить неограниченное количество информации.

Но накопители на магнитных дисках (НМД) работают гораздо быстрее, чем НМЛ.

Широко используются новые типы устройств ввода-вывода: дисплеи , графопостроители .

В этот период существенно расширились области применения ЭВМ. Стали создаваться базы данных, первые системы искусственного интеллекта, системы автоматизированного проектирования (САПР) и управления (АСУ).

В 70-е годы получила мощное развитие линия малых (мини) ЭВМ. Своеобразным эталоном здесь стали машины американской фирмы DEC серии PDP-11.

В нашей стране по этому образцу создавалась серия машин СМ ЭВМ (Система Малых ЭВМ). Они меньше, дешевле, надежнее больших машин.

Машины этого типа хорошо приспособлены для целей управления различными техническими объектами: производственными установками, лабораторным оборудованием, транспортными средствами. По этой причине их называют управляющими машинами.

Во второй половине 70-х годов производство мини-ЭВМ превысило производство больших машин.

Четвертое поколение ЭВМ

Очередное революционное событие в электронике произошло в 1971 году, когда американская фирма Intel объявила о создании микропроцессора .

Микропроцессор - это сверхбольшая интегральная схема, способная выполнять функции основного блока компьютера - процессора

Микропроцессор - это миниатюрный мозг, работающий по программе, заложенной в его память.

Первоначально микропроцессоры стали встраивать в различные технические устройства: станки, автомобили, самолеты . Такие микропроцессоры осуществляют автоматическое управление работой этой техники.

Соединив микропроцессор с устройствами ввода-вывода, внешней памяти, получили новый тип компьютера: микроЭВМ

МикроЭВМ относятся к машинам четвертого поколения.

Существенным отличием микроЭВМ от своих предшественников являются их малые габариты (размеры бытового телевизора) и сравнительная дешевизна.

Это первый тип компьютеров, который появился в розничной продаже.

Самой популярной разновидностью ЭВМ сегодня являются персональные компьютеры

Появление феномена персональных компьютеров связано с именами двух американских специалистов: Стива Джобса и Стива Возняка.

В 1976 году на свет появился их первый серийный ПК Apple-1, а в 1977 году - Apple-2.

Сущность того, что такое персональный компьютер, кратко можно сформулировать так:

ПК - это микроЭВМ с «дружественным» к пользователю аппаратным и программным обеспечением.

В аппаратном комплекте ПК используется

    цветной графический дисплей,

    манипуляторы типа «мышь»,

    «джойстик»,

    удобная клавиатура,

    удобные для пользователя компактные диски (магнитные и оптические).

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

Общение человека и ПК может принимать форму игры с красочными картинками на экране, звуковым сопровождением.

Неудивительно, что машины с такими свойствами быстро приобрели популярность, причем не только среди специалистов.

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

С 1980 года «законодателем мод» на рынке ПК становится американская фирма IBM.

Ее конструкторам удалось создать такую архитектуру, которая стала фактически международным стандартом на профессиональные ПК. Машины этой серии получили название IBM PC (Personal Computer).

В конце 80-х - начале 90-х годов большую популярность приобрели машины фирмы Apple Corporation марки Macintosh. В США они широко используются в системе образования.

Появление и распространение ПК по своему значению для общественного развития сопоставимо с появлением книгопечатания.

Именно ПК сделали компьютерную грамотность массовым явлением.

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

Есть и другая линия в развитии ЭВМ четвертого поколения. Это - суперЭВМ. Машины этого класса имеют быстродействие сотни миллионов и миллиарды операций в секунду.

Первой суперЭВМ четвертого поколения была американская машина ILLIAC-4, за ней появились CRAY, CYBER и др.

Из отечественных машин к этой серии относится многопроцессорный вычислительный комплекс ЭЛЬБРУС.

ЭВМ пятого поколения - это машины недалекого будущего. Основным их качеством должен быть высокий интеллектуальный уровень.

Машины пятого поколения - это реализованный искусственный интеллект.

Многое уже практически сделано в этом направлении.

Dr.Web - один из первых антивирусов в истории

Dr.Web вряд ли был бы создан, если бы до этого не возникли первые вирусы, которые, в свою очередь, не появились бы, не будь для них среды существования - то есть, компьютеров и компьютерных сетей.

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

Идеи витали в воздухе...

Идею самовоспроизводящихся программ изложил «отец» компьютера Джон фон Нейман. Материалы лекций на эту тему, которые он читал начиная с 1949 года, Нейман обобщил в научном труде «Теория самовоспроизводящихся автоматических устройств» более 60 лет назад - в 1951 году.

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

Первые вирусы

В 1961 году была создана игра Darwin, в которой несколько программ, названных «организмами», загружались в память компьютера. Организмы одного вида, созданные одним игроком, должны были уничтожать представителей другого вида и захватывать жизненное пространство.

В 1971 году появилась первая программа, которую можно считать вирусом в современном понимании - The Creeper. Она не причиняла вреда, а лишь выводила сообщение на экран:

I`M THE CREEPER: CATCH ME IF YOU CAN

Но она уже умела самостоятельно распространяться по сети, став первым сетевым вирусом в истории.

Она же породила и первый антивирус - программу Reaper, являющуюся по сути таким же сетевым вирусом. Reaper распространялась по сетям, никак себя не проявляя, а если ей удавалось найти на компьютере The Creeper - она его стирала.

Вирусы распространяются

А это уже серьезно


Первыми известными настоящими вирусами являются Virus 1,2,3 и Elk Cloner для ПК Apple II - того самого будущего «мака», вирусов для которых, якобы, не существует. Оба вируса появились в 1981 году.

Первая эпидемия

К середине 80-х годов широкое распространение получили компьютеры IBM PC, что стало одной из причин возникновения вирусных эпидемий.

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

Исследования начинаются

В дипломной работе по теме «Самовоспроизводящиеся программы», подготовленной студентом Дортмундского университета Юргеном Краусом в 1980 году, наряду с теоретическими выкладками перечислялись и реально существовавшие на тот момент самовоспроизводящиеся программы для компьютера Siemens. Именно в этой работе впервые была проведена параллель между живой клеткой и самовоспроизводящейся компьютерной программой.

Ясное определение термина «компьютерный вирус» было дано в 1983 году Фредом Коэном, на тот момент - аспирантом Университета Южной Калифорнии:

«Мы определяем компьютерный вирус как программу, которая может “инфицировать” другую, внедряя в нее свою копию. Инфекция может распространяться через ЭВМ или сеть... Каждая инфицированная программа может вести себя как вирус, благодаря чему инфекция распространяется».

Фред Коэн, «Компьютерные вирусы, теория и эксперименты»

Незадолго до Dr.Web

В 1988 году была разработана первая версия отечественного антивируса Aidstest. Автор этой легендарной программы - Д.Н. Лозинский. Она использовалась практически на всех персональных компьютерах в СССР, а затем в странах СНГ, оставаясь вне конкуренции долгие годы. Разработка Лозинского помогла многим пользователям, в частности в государственном и коммерческом секторах, справиться с вирусной проблемой на начальном этапе ее появления. Сегодня Д.Н. Лозинский является заместителем генерального директора «Доктор Веб».

Дмитрий Николаевич Лозинский - один из тех, кто определил развитие отечественного программирования и стоял у истоков первых российских антивирусных решений.

В СССР у истоков компьютерной вирусологии (с 1989 года) стоял Н.Н. Безруков. Его семинар «Системное программирование» и электронный бюллетень «Софтпанорама» в значительной степени были посвящены вопросам компьютерной вирусологии. В нем были представлены разработчики тогдашних отечественных антивирусов, включая Д.Н. Лозинского.

Позже Н.Н. Безруков написал фундаментальный труд «Компьютерная вирусология», который вышел в 1991 году и оказал большое влияние на Игоря Данилова.

Первая версия Spider’s Web

В 1992 году была разработана первая версия антивирусной системы Spider’s Web, включавшая в себя резидентный сторож Spider и доктор (сканер по современной терминологии) Web.

Так когда же был изобретен первый компьютер? На этот вопрос нельзя дать однозначного ответа в связи с различными классификациями компьютеров. Первый механический компьютер, созданный Чарльзом Бэббиджем в1822 г., на самом деле не очень похож на то, что мы привыкли называть компьютером сегодня.

Когда впервые было использовано слово «компьютер»?

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

Первый механический компьютер или концепция автоматической вычислительной машины.

В 1822 году, Чарльз Бэббидж разработал концепцию и приступил к разработке разностной машины (Difference Engine), которая считается первой автоматической вычислительной машиной. С этого началась история компьютера. Разностная машина была способна оперировать несколькими наборами чисел и выдавать бумажные копии результатов. В разработке разностной машины Бэббиджу помогала Ада Лавлейс, которая, по мнению многих, считается первым. К сожалению, из-за финансовых проблем, Бэббидж не смог закончить полномасштабную функциональную версию этой машины. В июне 1991 года, Музей науки в Лондоне построил Разностную машину № 2 в честь двухсотлетнего дня рождения Бэббиджа, а затем, в 2000 году завершил и печатающий механизм.

В 1837 году, Чарльз Бэббидж предложил первый программируемый вычислительный компьютер, который назывался Аналитическая машина. Аналитическая машина содержала блок арифметической логики (ALU), основной контроль потока, и встроенную память. К сожалению, из-за проблем с финансированием, этот компьютер так и не был построен при жизни Чарльза Бэббиджа. Только в 1910 году, Генри Бэббидж, младший сын Бэббиджа, смог завершить центральную часть этой машины по чертежам отца, которая оказалась в состоянии выполнять основные арифметические расчеты.

Первый компьютер с возможностью программирования.

Первый электро-механический двоичный программируемый компьютер Z1 был создан немецким инженером Конрадом Цузе в гостиной его родителей между 1936 и 1938 годами, и считается первым, действительно функциональным современным компьютером.

Машина Тьюринга была предложена Аланом Тьюрингом в 1936 и стала основой для теорий о вычислениях и компьютерах. Этот механизм распечатывал символы на перфоленте способом, который эмулировал человека после ряда логических инструкций. Без этих основных принципов у нас не было бы компьютеров, которые мы используем сегодня.

Первый электрический программируемый компьютер.

В декабре 1943 года был продемонстрирован первый электрический программируемый компьютер «Колосс» разработанный Томми Флауэрсом и использовался для расшифровки перехваченных немецких сообщений.

Первый в истории цифровой компьютер

Компьютер Атанасова-Берри — АВС был разработан профессором Атанасовым и аспирантом Клиффом Берри в 1937 году. Его разработка продолжалась до 1942 в Государственном колледже Айовы (теперь Университет штата Айова).
ABC была электрическим компьютером, который использовал вакуумные лампы для цифрового вычисления, включая двоичную математику и булеву логику и не имел процессора.
19 октября 1973 года, США федеральный судья Эрл Р. Ларсон подписал решение об отзыве патента ENIAC Дж Преспер Эккерта и Джона Мочли и назвал Атанасова изобретателем электронного цифрового компьютера.
ENIAC был изобретен Дж. Преспером Экертом и Джоном Мочли в Университете Пенсильвании и начал конструироваться в 1943 г и был завершен только в 1946 г. Он занимал около 1800 квадратных футов, и использовал около 18000 вакуумных трубок, весом почти 50 тонн. Несмотря на то, что судья постановил, что компьютер ABC был первым компьютером, многие все еще полагают, что ENIAC – это и есть первый компьютер, потому что он был полностью функциональным.

Первый компьютер с хранимой в памяти программой.

Британский компьютер, известный как EDSAC, принято считать первой электронно-вычислительной машиной, у которой программы хранились в памяти. Компьютер был запущен в работу 6 мая 1949 года и был первым ЭВМ, на котором выполнялась графическая компьютерная игра.
Примерно в то же время в Манчестерском университете Виктории разрабатывался другой компьютер под названием Manchester Mark 1 , который также мог выполнять сохраненные программы. Первая версия компьютера Марк 1 была введена в эксплуатацию в апреле 1949 года. В ночь 16-17 июня 1949 года Марк 1 был использован для запуска программы для поиска простых чисел Мерсенна, и за девять не сделал ни одной ошибки.

Первая компьютерная фирма.

Первой компьютерной фирмой была Electronic Controls Company, которая была основана в 1949 Дж. Преспером Экертом и Джоном Мочли, теми же людьми, которые помогали создавать компьютер ENIAC. Компания была позже переименована в EMCC или Eckert-Mauchly Computer Corporation и выпускала серию мэйнфреймовых компьютеров под именем UNIVAC.

Первая хранимая компьютерная программа

Первым компьютером, который был способен к хранению и выполнению программы из памяти был UNIVAC 1101 или ERA 1101, представленный правительству США в 1950 году.

Первый коммерческий компьютер.

В 1942, Конрад Цузе начал работать над Z4, который позже стал первым коммерческим компьютером. Компьютер был продан Эдуарду Штифелю, математику швейцарского федерального Технологического института Цюриха 12 июля 1950 года.

Первый компьютер компании IBM.

7 апреля 1953 года компания IBM публично представляла 701 — первый коммерческий научный компьютер компании.
Первый компьютер с оперативной памятью
8 марта 1955 года Массачусетский технологический институт MIT представил революционный компьютер «Вихрь» (Whirlwind), который был первым компьютером с RAM на ферритовых сердечниках и графикой в реальном времени.

Первый транзисторный компьютер

TX-O (Транзисторный Экспериментальный компьютер) является первым транзисторным компьютером, который был продемонстрирован в Массачусетском технологическом институте в 1956 году.

Первый мини-компьютер.

В 1960 Digital Equipment Corporation выпускала свой первый из многих компьютеров PDP, PDP-1.

Первый настольный компьютер и компьютер для массового рынка.

В 1964 на нью-йоркской Всемирной выставке был представлен общественности первый настольный компьютер Programma 101. Он был изобретен Пьером Джорджио Перотто и произведен компанией Olivetti. Приблизительно 44000 компьютеров Programma 101 были проданы, каждый по цене 3,200$.
В 1968 Hewlett Packard начала продавать HP 9100A, который, как полагают, был первым продаваемым на массовом рынке настольным компьютером.

Первая рабочая станция.

Несмотря на то, что этот компьютер никогда не продавался, первой рабочей станцией считают Xerox Alto, представленный в 1974 году. Компьютер был революционным для своего времени и включал полностью функциональный компьютер, дисплей и мышь. Этот компьютер, как и большинство компьютеров сегодня, использовал в качестве интерфейса своей операционной системы окна, меню и иконки. Многие из возможностей этого компьютера были продемонстрированы 9 декабря 1968 года.

Первый микропроцессор.

Первый микро-ЭВМ.

В 1973 году инженер Андре Трюонг Тронг Ти, вместе с Франсуа Жернелем, разработал компьютер Micral. Рассматриваемый как первый «микро-ЭВМ», он использовала процессор Intel 8008 и был первым коммерческим компьютерным без сборки. Первоначально продавался за $ 1,750.

Первый персональный компьютер.

В 1975 Эд Робертс ввел термин «персональный компьютер», когда он представил свое детище Альтаир 8800, несмотря на то, что первым персональным компьютером, как полагают многие, являлся KENBAK-1, представленный за 750$ в 1971 году. Компьютер полагался на серию переключателей для ввода данных и серию световых сигналов для вывода. Таким образом история компьютеров вышла на новый уровень.

Первый ноутбук или портативный компьютер

IBM 5100 является первым портативным компьютером, который был выпущен в сентябре 1975 года. Компьютер весил 55 фунтов (25 кг.) и имел пятидюймовый ЭЛТ-дисплей, накопитель на магнитной ленте, 1.9MHz PALM процессор и 64 КБ оперативной памяти.

Первым действительно портативным компьютером или ноутбуком является Осборн I, который был разработан Адамом Осборном и выпущен в апреле 1981 года. Осборн весил 24.5 фунта (11,1 кг.), имел 5-дюймовый дисплей, 64 Кбайта памяти, два 5 1/4-дюймовых дисковода для гибких дисков, работал на операционной системе CP/M 2.2, имел модем и стоил 1,795 долларов США.
Подразделение IBM PC (PCD) позже выпустило IBM — первый портативный компьютер, который весил 30 фунтов (13,6 кг.). Позже в 1986 году, IBM, PCD анонсировала первый ноутбук, весивший 12 фунтов (5,4 кг). Затем, в 1994, IBM представила IBM ThinkPad 775CD, первый ноутбук с интегрированным CD-ROM.

Первый компьютер Apple.

Apple I (Apple 1) был первым Компьютером Apple и продавался за 666.66$. Компьютер был разработан Стивом Возняком в 1976 году и оснащался 8-разрядным процессором и 4 Кб памяти с возможностью расширения до 8 или 48 Кб платами расширения. Несмотря на то, что Apple продавался полностью собранным он, все же не мог функционировать без источника питания, дисплея, клавиатуры и корпуса, которые продавались отдельно.

Первый персональный компьютер IBM.

IBM представляла свой первый персональный компьютер, названный IBM PC под кодовым названием Acorn в 1981 году. На нем был установлен 8088 процессор, 16 Кбайт памяти, которая расширялась до 256 кб, в качестве операционной системы использовалась MS-DOS.

Первый ПК клон.

МодельCompaq Portable , является первым клоном PC и был выпущен в марте 1983 года фирмой Compaq. Compaq Portable был на 100% IBM-совместимым и способным к выполнению любого программного обеспечения, разработанного для компьютеров IBM.

Первый мультимедийный компьютер.

В 1992 году, Тэнди Radio Shack стала одной из первых компаний по выпуску компьютеров на основе стандарта MPC с его введением M2500 XL / 2 и компьютеров M4020 SX.

Многие считают это ремесло непонятным настолько, что нет никаких шансов разобраться в принципах даже теоретически.
Попытаюсь объяснить как это происходит, что называется, на пальцах.

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

Приведу пример, как выглядела бы программа по нарезке хлеба для нашего тела

Задача "нарезать хлеба" на языке программирования высокого уровня

1.Открыть правой рукой хлебницу;
__2.Взять булку хлеба правой рукой;
__3.Положить хлеб на разделочную доску; (предположим, что доска уже лежала на столе)
__4.Открыть правой рукой верхний ящик стола;
__5.Найти блестящий нож, длиной 20 см, с черной ручкой;
__6.Взять нож в правую руку;
__7.Поднести нож к хлебу;
__8.Зафиксировать хлеб левой рукой, взявшись за левый край булки;
__9.Расположить нож строго над правым ребром булки хлеба;
__10.Повторять следующие действия 5 раз:
____10.1.Отступить влево на сантиметр;
____10.2.Повторять следующие действия, пока лезвие ножа не не коснется доски:
________10.2.1.Прижать нож к хлебу;
________10.2.2.Совершить ножом возвратно поступательное движение вперед-назад;
____10.3.Поднять нож вверх;
__11.Положить нож в ящик;
__12.Отпустить левой рукой хлеб.
Все, программа по нарезке хлеба в количестве пяти кусков готова, можно ее продолжить, описав стирание крошек со стола, укладывания нарезанных кусочков на тарелочку и т.д.

Отладка программы

Запускаем программу и смотрим, как она работает:
Ой... вместе с пятым куском и палец отрезал...
чёрт! остановить программу!
Я же не написал как именно нужно зафиксировать хлеб левой рукой, схватился как попало и большой палец торчал в сторону...
Возвращаемся к строчке "Зафиксировать хлеб левой рукой, взявшись за левый край булки;"
После нее пишем:
"Поджать большой палец левой руки влево, к ладони;"
Запускаем программу
Ой... на строчке "Положить нож в ящик;" нож упал на пол...
Проклятье! оказывается, стол стоит немного под наклоном и ящик сам закрылся...
Возвращаемся к коду и перед строчкой "Положить нож в ящик;" пишем "Открыть правой рукой верхний ящик стола;"
Заметили ошибку? Нет?!
Как мы можем открыть ящик правой рукой, если в этой руке нож? Значит, сначала нужно положить нож на стол, потом открыть ящик, снова взять нож и т.д.
И делаем мы это до тех пор, пока хлеб не будет нарезан как следует, без повреждения мебели и пальцев.
Вот, примерно так происходит отладка
С опытом начинаешь писать программы, которые работают с первого раза, допуская минимум ошибок, а проверка "открыт ли ящик", перед складыванием в него чего-то, входит в привычку.

Когда какие-то операции совершаются постоянно, такие как нарезка хлеба, мойка посуды и т.д., то программисты их описывают в виде процедур.
Процедура - набор определенных действий, спрятанный под одной командой.
Таким образом, текст программы, который я приводил выше, можно поместить в процедуру под названием НарезатьХлеба(параметр), где в качестве параметра будем указывать количество кусков

в результате, программа с использованием процедур будет выглядеть так:
__ЗайтиНаКухню();
__НарезатьХлеба(5);
__ПоставитьХлебНаСтол();
__ПомытьПосуду();
и нет предела совершенству

Теперь о языке низкого уровня

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

Стоит немного рассказать что такое высокоуровневый язык и зачем нужен низкоуровневый, если проще писать на высокоуровневом?
Высокоуровневый язык был написан на низкоуровневом, в него были заложены команды, в виде процедур, подразумевающие последовательность действий, таких как "открыть ящик", "взять нож в руку" и т.д. но если по какой-то причине потребуется взять нож только двумя пальцами, потому что ручка сломана или отсутствует, например, то сделать этого не удастся, ибо команда "взять нож в руку" подразумевает использование всех пяти пальцев. Для таких ситуаций в высокоуровневых языках есть возможность делать вставки кода на низкоуровневом языке и вместо стандартной команды "взять нож в руку" пишется код на низком уровне под нож со сломанной ручкой.
Человек все эти операции делает не задумываясь, но машина так не умеет, ей нужно подробно объяснить что, как и в какой последовательности.
Сверхвысокоуровневые языки являются узкоориентированными на определенные задачи, например, для работы на кухне, они включают набор специальных команд и код на них выглядел бы примерно, как программа с использованием процедур, что описана выше.

Вы наверняка сталкивались с тем, что какие-то программы работают только под Windows, например, и их нет под Android или наоборот, хотя функции, казалось бы, обычные, и почему на телефон с Windows Phone нельзя установить Android?
Объясню на примере все той же программы для кухни: в тексте программы сказано "Найти блестящий нож, длиной 20 см, с черной ручкой в верхнем ящике стола", например, это для Windows. Однако, в андройде нет верхнего ящика стола, ножи там хранятся в настенном шкафу, т.е. процедура открытия ящика должна быть заменена на процедуру открытия шкафа, согласитесь - они разные! Но и нож там лежит длиной не 20 см, а в 25, он вовсе не блестящий и ручка у него не черная, а синяя. Поэтому, чтобы нарезать хлеба, нужно существенно переписать программу, хотя результат будет такой же. Для этого существуют кросплатформенные программы, которые могут работать под разными системами, т.е. на разных кухнях, ибо программисты предусмотрели оба варианта. Это, конечно, замечательно, но у них есть и минусы: если у вас всегда используется только кухня с ящиками в столах, то зачем вам код, который умеет работать со шкафами? А место он занимает. Это все равно что купить микроволновку, у которой в комплекте идут две дверки, одна предназначена для открывания влево, а другая вправо и еще у этой печки есть ниша, в которую можно положить ненужную дверку, но из-за этой ниши микроволновка выше на 10 мс. Вы поставите нужную дверку, а ниша будет занимать место.


Первую компьютерную программу написала женщина, мать троих детей и аристократка. И написала она ее еще до того, как появился первый в мире компьютер.

Княгиня Лавлейс или Ада А. Байрон-Кинг - дочь великого британского поэта лорда Байрона. Ее отец бросил ее мать еще когда она была маленькой. Мать чрезвычайно радовалась тому, что ее маленькая дочурка сильно увлеклась математикой, хотя были и попытки пойти по стопам отца и писать стихи. Однажды в 12 лет она показала матери исчерканные листки бумаги, на ней юная Ада изобразила чертеж летательного аппарата.

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

Бэббидж придумал название для своей будущей машины и назвал ее «дифференциальной». В 1882 году ученый заинтриговал Адмиралтейство Британии и те стали спонсорами его разработок. Размер машины был огромный, она должна была занимать целую комнату и вычислять с точностью до 10-го знака дроби. За 10 лет ученый построил только один блок своего устройства. Идея аналитической машины захватывала Бэббиджа, он по сути предложил миру схему почти современного компьютера. Центральный процессор он называл мельницей, были перфокарты, программы-инструкции. Машина состояла из множества зубчатых колес и должна была приводиться в действие паром. В 1871 году Чарльз Бэббидж умер и правительство Англии решило, что никто больше не способен изобрести подобную машину и закрыла проект.

Но тем не менее 13 июля 1843 года Ада прислала математику письмо, в нем она изложила алгоритм машинных вычислений чисел Бернулли. Ада считала, что обработка данных машиной вовсе не обязана быть аналитической или арифметической, она считала это заблуждением. Цифры машина понимает так же как и буквы или другие символы. Графиня считала, что в будущем машины смогут писать музыку и даже стихи.

У самой же было развлечение - поиск формулы, которая позволила бы всегда побеждать в тотализаторе на скачках. Ада умерла в возрасте 37 лет, прожила столько же как и ее отец и была похоронена в той же усыпальнице, что и лорд Байрон. В день ее рождения - 10 декабря, во многих странах отмечают День программиста, а в 70-е Пентагон назвал в ее честь язык программирования ADA.

mob_info