У багатьох східних казках розповідається про могутніх джинів, здатних творити чудеса. Джин покірно служить кожному, хто знає відповідні заклинання і вміє правильно їх вимовляти. Але якщо людина забула чи сплутала заклинання, то джин відмовлявся служити йому.
Сучасні комп’ютери поводяться в деякому сенсі подібно джину. «Заклинаннями» для комп’ютера служать програми, складені людьми, а саме ПРОГРАМІСТАМИ. Ті, для кого пишуть програми, називають КОРИСТУВАЧАМИ.
Самі програми записуються в суворій відповідності з певними правилами.
Подібно до того, як джини з однаковою готовністю виконували «добру» і «злу» волю свого повелителя, так і комп’ютер педантично дотримується вказівок будь-якої програми, в якій немає порушень правил.
Упевнений, що багато хто знає, що С++ — це мова програмування (хоча б з першого розділу). Мова, яка дає нам можливість зрозуміло пояснити комп’ютеру, що ми від нього хочемо. Хоча, якщо бути до кінця відвертим, комп’ютер розуміє тільки одну мову — мову машинних кодів. Для прикладу, програма, яка виводить на екран фразу «Hello, world!», Виглядає приблизно так на «рідній» для комп’ютера мові:
MZР __ + @ А ¦ ¦ -!+L-!T $ PE L ¦-7 р ¤! ` Р oK Р ў+ 0 e+ t + Г·t3+ZГс¤Н$М_тUЛьЬ¤+M +tUў- tVА+ ¤+¦Ф№+¤-;-wGГ=xФ№+ tАс°-щЗ-Л_Ф№+f;s §lФ№+Л +u"бАФ№+¤+MАс°ЎDАt Э+- 3+ ыўы·ы°ыЎыЇЛD$П$._4Ч№++ ._ dЛ4 Ў-ubSЛdг4 +__є --fУЙf-+ -+ЙA+@У№+Л-[Xf +tRPRVh·ў+ш_S Z+єfО-fЛцf-d¤+§ RfRfh ш4 Л+Zы¦SшC¤д-ы¦¤+ьМ-¤++¤_e fМ+fО_fО¦f¤бЛЁdЎ t3+ОшАс°Л§АФ№+- dб4 ЙdЙ§4 f_f _t dЛ4 Ў-uSSЛdг4 +__є --fУЙf-+-+ЙA+@У№+Л-[ +єЙ]№fМ+fО-fЛц+ыf-d¤+§ RfRfh шз Л+Zы+Sш¦ ¤д-ы+fО_fО¦¤+эm№¤+ _>] Л¦Л+ЛMЛm _сбшЬ№+Л 9ШФ№+t§Л§pФ№+ш№) fd¦ __+RPбшЬ №+Л 9ШФ№+tЛ§pФ№+шС) + +Э _YН¦ў+ ._5lЧ№+f-Н¦ў+ +f+ u ._5lЧ№+f-&ЛZ¶QW&бфЬ№+&Л &ЛJf&ОB_Ф№ +f;sЛlФ№+Л< _t=ИФ№+_G¶u_O¶WfМ+-чfЛ№3+М-Ас°
Ну, як скажете в такому коді писати? Неможливо! Ви праві — так ми писати і не будемо. Для цього і потрібна мова програмування, щоб полегшити складання програм. А для перекладу команд з мови С++ на машинну мову є спеціальна програма — «КОМПІЛЯТОР». У нашому випадку, при роботі з оболонкою Microsoft Visual C++ 6.0 виклик компілятора здійснюється автоматично і дозволяє переводити команди мови С++ в машинний код.