Математика | ||||
Начальный курс программирования на языке форт-Броуди Л. 1990. - 352 с | ||||
Начальный курс программирования на языке форт-Броуди Л. 1990. - 352 с
Броуди Л. 80 с. м ' тистика, 1990. - 352 с .^анов.ского- — М.: Финансы и ста-ISBN 5-279-00252-б! атер___ Для широкого круга специалистов К СОВЕТСКОМУ ЧИТАТЕЛЮ С большим удовольствием приглашаю советских читателей в мир Форта. В списке моих адресатов есть представители всех стран, и только СССР до последнего времени составлял непонятное мне исключение. Форт начинен идеями, а идеи легко преодолевают идеологические и национальные границы. К тому же Форт — это язык, и поскольку в его основе лежат слова, он легко переводим на естественные языки. Я уже видел французскую и китайскую версии Форта, где английские слова заменены соответствующими французскими и китайскими словами, так что программисты практически могут работать на своем родном языке. Я полагаю, то же самое может быть сделано и в вашей стране. Единственный недостаток подобной трансляции — уменьшается мобильность программ. Компактный и эффективный язык программирования Форт является машинно-независимым. Моя десятилетняя практика реализации Форта на множестве универсальных, мини- и микрокомпьютеров показывает, что программы на всех ЭВМ выполняются до такой степени одинаково, что я забываю, на какой из машин работаю в данный момент. Чтобы перейти на новый компьютер, требуется всего несколько человеко-недель. В основе гибкости Форта лежит его простота. Мне часто кажется, что люди слишком все усложняют. Некоторые языки программирования и операционные системы чересчур изощренны. Форт предлагает в качестве альтернативы простые средства программирования, которые можно расширять для обслуживания любой предметной области. Лео Броуди мастерски демонстрирует такие средства, подчеркивая их простоту. Применяя Форт, пожалуйста, помните, что если вы делаете задачи сложнее, чем они есть на самом деле, то ничего в результате не выигрываете. Эффективная реализация простых алгоритмов, простота пользовательского интерфейса и представление простых ОГЛАВЛЕНИЕ К ccEcicKcviv читателю . ..... .... . ..... 5 Предисловие к русскому изданию . .......... ........ 7 Предисловие .. . ......... iy От автора........ . ... . ... ..... 12 Коротко и книге ....... .... .... .... ... 14 Введение ... .... . ... ... . . ... 16 Что такое машинный язык.-' (шн;,;сн;н- для начинукм;и\i............ 16 Области применения Форта s лн^ич'не для проф^ч-ног^,..' -< - . ... . 18 Глава ! ОСНОВЫ ФОРТА ...... . 23 Живой язык ,......... ..... . • . . 23 Диалог........ ... .... ... . . 25 Словарь......... ......... . ... 29 Как правильно «обьнсняться* ьа Форте? . . . ... .... 32 Период исполнения и перлид ком,!;;\иии . , ... . , . . 33 Стек — рабочая облас: о оперит иании памяти для ьл;кл"шени>! ap.up.viei ii'iei. ки\ действий .... . . ... . . . . . . . 33 Постфиксная запись........ . . ........... 37 Работа и о (.пи лет . . . ......... 38 <-.. . , - ... Т.... ,.„ ,г. ^ I L КОЫ1>1 Пи ! J i_l,i Н ... . . . . ... ,}!.,' О с н о в h ы f • т е р .vi; i j i ы...... . . . . .... 43 Упражнении . ... . . ..... ... . . . 44 Г л а в а 2. ВЫПОЛНЕНИЕ АРИФМЕТИЧЕСКИХ ОПЕРАЦИИ 46 Режим калькулятора...... Практически^ задачи на ;]римененне постфиксной чаписи I у^ра/кне^иН1 Режим определении...... Решение задач (упражнение 2 Б; . . . Операции деления....... . .... ... Манипуляции со стеком ..... . . ... Печать без изменения содержимого стека ... . . ... Задачи на выполнение Gijepaj'vr го стеком ч арифметических (упражнение 2-Я)........ . ..... . . . h.3 Двойные о пера ц ии.... ..... ... .... . . 83 Основные термины............. ..... . . . 64 Упражнения.......... ... . . . . . 65 Глава 3. КАК РАБОТАТЬ НА ФОРТЕ................. 66 Часть 1. Общие сведения................... 66 Еше раз о словаре . ...... ...... ... 66 Использование дискоь^и памяти . ... . . . 68 Привила записи Фор-т-прокым1,, . . . ... . . . 71 Особенности программирования н;; Форте . .... ... 7? '*.-!! D)'.IK;I программ . . , ...... . . . 73 ИгК'гр},\кмтнльны<' ( р; .кл ;:3 рябпт:..; г. блоками ... .... 75 Часть 2. Тексювый редаюс,р -4>и,;,а . ........ .... 77 Програм иа-р(_'дак'1 oj<...... .......... 78 KOM.-JH.IL,] сим иол ьн о го редактирования. . . . . . . , . ьО Буфер поиска и буфер вставок .... . ... .... S3 Команды редактирование с~\ рок............ . 86 Комбинированные команд;! . •' -ч:т?1ровлния ... .... . 88 - Основные термины . . ........ . . . 93 Упражнения . . ..... . . . ... . ht4 Ли1ература ... . ....... . . . . 94 Глава 4. КОМПЬЮТЕР «ПРИНИМАЕТ РЕШЕНИЯ*.......... 95 Условный оператор...... ..... ... . . . . 95 Более подробно об операторе IF....... ........... 97. Операции сравнения...................... 98 Л..ы'ерна-тивная BL-I вь ус донного оператора . . . . . . . . . . - 99 Вложенные конструкции 1I-...THLN........... ..... 100 «Секрет* оператора II .. . , ... ..... . 102 Н е м н о г г) л о! и к и........ . . . . ..... 103 Дьа слова с встроенными операторами IF....... . . . . 10Ь О с н о з 11 ы е т е р м и н ы . ............ • - • • - • 1 иЯ Упражнения .... . .... ... . . . . . 10^ Глава 5 ОПЕРАЦИИ НАД ЦЕЛЫМИ ЧИСЛАМИ........... "2 CuKpaiuciU'ue операции.......... . ... . . ' '* С м е 41 а н н ы е математические операции....... ........ '' "•* 350 Сгек возвратов ......................... ' Арифметические операции над числами с плавающей точкой......... ° Почему программисты предпочитают масштабирование.......... *'' Операция масштабировании */ ................ 119 Округление........................... 120 Возможности масштабирования....... ........... 121 Аппроксимация вещественных чисел................. 123 Операции над дробными числами..........7........ 124 Заключение.........."................ 128 Основные термины....................... 129 Упражнения.......................... 130 i Литература.......................... 131 Глава 6 ЦИКЛИЧЕСКИЕ СТРУКТУРЫ.................. 132 Циклы со счетчиком....................... 132 Ограничения на выполнение цикла.................. 135 Примеры использования оператора цикла DO.............. 136 Вложенные циклы.............. ......... 138 Рекомендации по применению оператора DO в стиле Форта......... 141 Циклы с условием........................ 142 Выход из'цикла (LEAVE) н ветвление (BRANCH)............ 145 Основные термины....................... 148 Упражнения.......................... 148 Глава 7. ЧИСЛО ТИПОВ ЧИСЕЛ..................... 150 Часть 1. Для начинающих................... 150 Чем отличаются числа со знаком и без знака.......... 150 Арифметический сдвиг................. 153 4ncvia двойной длины.................. 154 Преимущества шестнадцатиричной системы счисления (и другие системы)...................... 154 Код для представления символьной информации (ASCII)..... 156 Часть 2. Для всех...................... 159 Двоичная логика ................... I59 Числа со знаком и без знака............... 162 Системы счисления.................. 163 Числа двойной длины.................. 164 Формирование чисел двойной длины без знака......... 166 Форматирование чисел одинарной длины со знаком....... 170 Операции над числами двойной длины............ 172 Операции над числами различной длины........... 173 Использование чисел в определениях ............ 174 Основные термины................... 177 Упражнения..................... 178 I. ПЕРЕМЕННЫЕ, КОНСТАНТЫ И МАССИВЫ............. 181 Переменные (общие сведения)................... 181 Более подробно о переменных................... 183 Переменная в качестве счетчика................... 185 Константы........................... 187 -Переменные и константы двойной длины................ 189 Массивы........................... 190 Использование массива счетчиков.................. 194 Вычленение определений .................. . 197 Организация цикла по массиву................... 199 Массивы байтов........................ 200 Инициализация массива ........... .......... 201 Основные термины....................... 204 Упражнения.......................... 205 Глава 9 ФУНКЦИОНИРОВАНИЕ ФОРТ-СИСТЕМЫ 208 Поиск по словарю........................ 208 Векторные вычисления ...................... 210 Апостроф в определении..................... 212 Структура словарной статьи .................... 213 Адресация полей ........................ 216 Стр;, 1\турл определения через двоеточие................ 217 Вложенные уровни вычислений................... 218 Еще один вариант использования стека возвратов............ 220 Выход на верхний уровень..................... 221 Произвольное изменение последовательности выполнения слов ....... 222 Рекурсия............................ 224 351 География Форта...................... g26 Мультизадачные Форт-системы................... 231 Пользовательские переменные................... 231 Контекстные словари (списки слов) ................. 233 Основные термины....................... 236 Упражнения.......................... 238 Глава 10. ВВОД-ВЫВОД........................ 23д Блочные буферы........................ «39 Операторы вывода ....................... ^44 Вывод текста с диска....................... ^лс. Операции над строками в оперативной памяти.............. 248 Ввод с клавиатуры....................' 9Е^ Ввод из входного потока..................... 253 Применение слова WORD..................... 257 Указатели.входного потока, используемые словом WORD......... 258 Преобразование вводимых чисел.................. 260 Построение программы ввода чисел с помощью слова KEY......... 263 Сравнение строк........................ 264 Строковые литералы....................... 266 Основные термины....................... 270 Упражнения.......................... 27! Литература................ 272 Глава 11. РАСШИРЕНИЕ КОМПИЛЯТОРА: ОПРЕДЕЛЯЮЩИЕ И КОМПИЛИРУЮЩИЕ 'СЛОВА.................'........... 273 Что такое определяющее слово?................... 273 Определяющие слова вы можете специфицировать сами......... 278 Что такое компилирующее слово?.................. ^84 Несколько дополнительных слов управления компиляцией......... 289 Флаг состояния......................... 295 Введение в блок-схемы Форта..........-......... 298 Заключение......-.................... 299 Основные термины....................... 303 Упражнения.......................... 303 Литература.......................... 304 Глава 12. ТРИ С ПОЛОВИНОЙ ПРИМЕРА.................. 305 Откачка файла . ........................ 306 Программисту о структуре прикладной программы............ 308 Без взвешивания........................ 317 Форт-ассемблер........................ 324 Усовершенствованный генератор бессмысленных сообщений........ 332 Упражнения.......................... 334 Литература.......................... 335 Приложение А. ОТВЕТЫ К УПРАЖНЕНИЯМ..............х. . 335' Приложение Б. АЛФАВИТ СЛОВ ФОРТА ........ 345 Приложение В. СЛОВА ФОРТА, СГРУППИРОВАННЫЕ ПО ТЕМАМ........ 346 Цена: 200руб. |
||||