Читаем Искусственный интеллект полностью

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

В рамках моего курса в университете мы сначала играем с жесткими дисками и уже потом переходим к обсуждению программного обеспечения (ПО) и «Hello, world!» в том числе. ПО – это все, что взаимодействует с аппаратным обеспечением. С его помощью вы добиваетесь от компьютера выполнения написанных вами на клавиатуре инструкций. Это то, что обеспечивает работу программы «Hello, world!». К слову, текст, который вы набираете, также превращается в инструкции, которые компьютер исполняет. Железо – это физическая часть компьютера, софт – все остальное. Таким образом, компьютерное программирование и написание ПО чаще всего означают одни и те же вещи.

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

Хорошая новость заключается в том, что для начального уровня программирования понадобится математика уровня 4-5 класса школы. Вам нужно разбираться в таких операциях, как сложение, вычитание, умножение, деление, и понимать, что такое проценты и остаток. Кроме того, понадобятся базовые знания геометрии, а именно представления о площади, периметре, радиусе и окружности. Также стоит вспомнить о графиках и о координатах х, y, z. Наконец, вам понадобится базовое понимание функций – тех, что мы используем, чтобы превратить 2 в 22.

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

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

Обычно способ взаимодействия аппаратного обеспечения и софта описывается техническим языком. Вместо этого воспользуемся метафорой. Разобраться в слоях компьютера – все равно что разобраться в слоях клаб-сэндвича с индейкой (рис. 2.3).

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

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

Над аппаратным обеспечением находится слой, который позволяет переводить слова в двоичный код (нули и единицы). Назовем его слоем машинного языка. Это как слой индейки, который укладывается поверх хлеба. Машинный слой обеспечивает перевод символов в двоичный код, при помощи которого компьютер и осуществляет расчеты. Этими символами могут быть слова, цифры – то, что мы, люди, используем для коммуникации друг с другом. Это искусственная система. Чтобы говорить на языке машинных кодов, необходимо владеть особым диалектом – языком ассемблера, который буквально собирает символы в машинный код.

Язык ассемблера сложный. Ниже можно познакомиться с примером того, как на нем выглядит программа десятикратного вывода «Hello, world!». Я нашла этот код на сайте для разработчиков под названием Stack Overflow.

Перейти на страницу:

Похожие книги

Разговоры на песке. Как аборигенное мышление может спасти мир
Разговоры на песке. Как аборигенное мышление может спасти мир

Тайсон Янкапорта (род. 1973), представитель клана Апалеч, одного из объединений коренного населения Австралии, основал Лабораторию систем аборигенного знания (Indigenous Knowledge Systems Lab) в мельбурнском Университете Дикина. Его книга представляет собой эссе о неустранимых противоречиях рационального и глобального западного мировоззрения, с одной стороны, и традиционной картины мира, в частности той, которой по сей день верны австралийские аборигены, с другой. Как человек, который предпринял переход из мира традиции в мир глобальности, постаравшись не пошатнуть при этом основы мышления, воспринятого им с рождением, Янкапорта предпринимает попытку осмыслить аборигенную традицию как способ взглянуть на глобальность извне.В формате PDF A4 сохранен издательский макет.

Тайсон Янкапорта

Фольклор, загадки folklore / Зарубежная публицистика / Документальное
Когда смерть становится жизнью. Будни врача-трансплантолога
Когда смерть становится жизнью. Будни врача-трансплантолога

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

Джошуа Мезрич

Биографии и Мемуары / Публицистика / Зарубежная публицистика / Медицина и здоровье / Документальное