Учебник по языку Ассемблер в задачах и примерах

Учебник по языку Ассемблер в задачах и примерах Screenshot Профессия программиста удивительна и уникальна.

Разработчик:   Unknown
      другие программы →
Лицензия:   Freeware
Размер:   965K
Язык:   
ОС:   Windows Vista (?)
Рейтинг:   0 /5 (0 голосов)

Профессия программиста удивительна и уникальна. Давно уже настало время настоящего философского осмысления этой сферы человеческой деятельности, действительно обладающей какими-то особенными, для людей непосвященных чуть ли не магическими, свойствами. Если не брать в рассмотрение коммерческую сторону, то можно сказать, что чужих людей в этой области профессиональной деятельности нет. В чем же ее особенность? Наиболее точно по этому поводу высказался Фредерик Брукс в главе «Пятьдесят лет удивления, восхищения и радости» своей книги «Мифический человеко-месяц, или как создаются программные системы>: «Немногим Бог дает право зарабатывать на жизнь тем, чем они с радостью занимались бы по собственной воле, по увлечению. Я благодарен судьбе». И далее: «Область связанных с компьютерами знаний претерпела взрыв, как и соответстующая технология. Будучи аспирантом в середине 50-х, я мог прочесть все журналы и труды конференций. Я мог оставаться на современном уровне во всей научной дисциплине. Сегодня мне в моей интеллектуальной жизни приходится с сожалением расставаться с интересами то в одной, то в другой подобласти, поскольку количество документов превысило всякую возможность справиться с ними. Масса интересов, масса замечательных возможностей для учебы, исследований и размышлений. Чудесное затруднение! Не только конца не видно, но и шаг не замедляется. В будущем нас ожидают многие радости». Что еще к этому добавить? Структура книги Эту книгу можно рассматривать как своеобразную форму программного продукта. Даже беглое ее пролистывание показывает, как много в ней программного кода. Более того, так как ассемблерный код неэк\\'ономичен с точки зрения использования поверхности листа бумаги для его записи, то в тексте книги приведены лишь значимые для каждого конкретного контекста изложения фрагменты программ. Полные тексты этих программ содержатся на дискете. Некоторые наиболее объемные по размеру исходного текста программы целиком вынесены на дискету без приведения их фрагментов в тексте книги. Для эффективной работы с ними читателю следует внимательно следить за ссылками на них и соответствующими пояснениями. Насколько это возможно, программы были проверены, но было бы опрометчиво утверждать, что вероятность появления ошибок в них равна нулю. Любому программисту, даже имеющему очень скромный опыт практической работы, известно, что вероятность последней ошибки есть всегда. В связи с этим просьба к читателям сообщать о найденных ошибках по указанным ниже адресам электронной почты. Книга состоит из 10 разных по объему глав. Ниже приведены краткие сведения о цели и характере содержимого каждой из этих глав. Глава «Программирование целочисленных арифметических операций». В этой главе приводятся исчерпывающие сведения об алгоритмах реализации четырех основных арифметических операций над числами различной разрядности. На практике нередко возникают ситуации, когда численные значения данных выходят за пределы максимально представимых диапазонов чисел в компьютере. В этом случае нужно использовать алгоритмы для производства вычислении над многобайтными (с разрядностью от 1 до оо) числами. В этой главе приведена реализация этих алгоритмов для двоичных и двоично-десятичных (BCD) чисел. Кроме этого, глава содержит описание алгоритмов генерации псевдослучайных последовательностей, проблема организации которых также возникает достаточно часто. Глава «Сложные структуры данных». Содержимое этой главы значительно дополняет и расширяет содержимое одноименного урока 12 учебника. Достаточно перечислить номенклатуру рассмотренных структур данных, названных «сложными», — это множества, массивы, структуры, таблицы. одно- и двусвязные списки, деревья. Для демонстрации работы с этими «сложными структурами данных» подобраны интересные и востребованные на практике алгоритмы. Так, работа с массивами показана на примерах популярных алгоритмов сортировки и поиска, работы с матрицами. Работа со структурами иллюстрируется на примерах организации массивов структур — таблиц. При этом наряду с обычными таблицами рассмаривается специальный класс таблиц — таблиц с вычисляемыми входами, или хэш-таблиц. Интересные примеры иллюстрируют выполнение основных операций над элементами одно- и двусвязных списков. Работа с сетью показана на примере организации в программе такой структуры, как конечный автомат. Заканчивается глава рассмотрением элементов компиляции программ. Это логичное и оправданное с практической точки зрения завершение главы о сложных структурах данных. Наверняка каждому из вас приходилось организовывать элементарный языковой интерфейс с пользователем и обрабатывать его ввод. О существующих подходах к практической реализации формальных механизмов распознавания ввода пользователя вы узнаете из главы 2. Глава «Процедуры в программах ассемблера». Также достаточно интересная глава, которая является существенным дополнением урока 14 «Модульное программирование» учебника. Большое внимание уделено в ней реализации рекурсивных процедур в программах на ассемблере. Реализация рекурсии в любом языке — предмет дискуссии, причем от полного неприятия до слепого поклонения. Мы не стали принимать участие в этой дискуссии, а просто показали технологию разработки рекурсивных программ на ассемблере. Попутно обсуждению подвергаются проблемы передачи параметров и сохранения локальных параметров процедуры. В несколько более скромном объеме приведены сведения об организации вложенных процедур. В этой главе также содержится очень важный материал для программирующих под Windows — о разработке и об организации работы с DLL-библиотеками в программах на ассемблере. Глава «Обработка цепочек элементов» содержит пример реализации некоторых полезных алгоритмов поиска подстроки в текстовой строке. Материал этой главы представляет собой существенное дополнение (а где-то предлагает и альтернативные решения) урока 11 «Цепочечные команды» учебника. В Глава «Работа с консолью в программах на ассемблере» в полном объеме рассматривает проблему ввода информации с клавиатуры и вывода информации на экран компьютера. Для этого приведено описание соответству-щих средств BIOS, операционных платформ MS DOS и Windows. Глава «Преобразование чисел» предлагает набор алгоритмов для преобразования представлений чисел между различными системами счисления. Этот вид преобразования данных также часто встречается на практике. Из-за того что в ассемблере нет для этого соответствующих средств, каждый из программистов решает эту задачу по-своему, исходя из своего опыта и знаний. Глава «Работа с файлами в программах на ассемблере» содержит систематизированные сведения по работе с файлами из программ на ассемблере. За неимением соответствующих средств языковой поддержки со стороны программистов на практике также наблюдается «свободное творчество». Приведенные сведения относятся к уровню практической реализации задач в MS DOS и Windows с учетом возможности использования как длинных, так и коротких имен. Как оценить эффективность кода, который вы пишете? В этом вам поможет материал главы «Профайлер». В ней содержится описание двух макрокоманд, использующих средства микропроцессора Pentium, которые помогут вам решить эту задачу. Глава «Вычисление CRC» описывает.варианты решения одной интересной практической задачи, которой на практике можно найти достаточно много применений. Обладая этим инструментом, можно проводить быстрые оценочные проверки целостности данных, которыми манипулирует ваша программа. Суть этих алгоритмов с первого взгляда не очень очевидна, поэтому данная глава содержит подробное их объяснение. Глава «Программирование ХММ-расширения» призвана дополнить материал урока 20 «ММХ-технология микропроцесоров Intel» учебника. В ней на примере реализации нескольких характерных алгоритмов приводятся сведения о порядке использования команд ХММ-расширения микропроцессора Intel. Более того, предлагается альтернативный подход к решению проблемы поддержки работы с этими командами в программах на ассемблере. Механизм решения этой проблемы можно использовать и в других случаях, когда требуется обеспечить поддержку новых команд микропроцессора, работая со старыми версиями компилятора (и не только ассемблера), процесс обновления которых по объективным причинам значительно значительно более инертен, чем процесс обновления системы команд микропроцессора. Необходимо подчеркнуть тот факт, что программы книги реализованы с помощью двух версий ассемблера — 16- и 32-разрядной. Выбор операционной платформы и средств реализации задач книги производился исходя из их конкретной постановки. Главный критерий здесь — подчеркнуть особенности реализации алгоритма. Если для этого достаточно платформы MS DOS, то задача реализовывалась с использованием средств этой ОС. При необходимости вы достаточно легко сможете доработать свою программу так, чтобы она функционировала в среде Windows. Для этого книга содержит достаточно практических примеров. Многие задачи реализованы непосредственно для функционирования в среде Windows. Сделано это в основном на примерах консольных приложений Windows. Тем самым был дополнен материал учебника, в котором процесс разработки оконных приложений для Windows описан достаточно подробно. Следует отметить, что для пояснения наиболее сложных алгоритмов в некоторых примерах книги введен псевдоязык, синтаксис которого рассмотрен в главе 2. Для экономии места такой вид пояснения используется для текстов программ, вынесенных на дискету. Поэтому имейте в виду, что исходные тексты программ на дискете немного отличаются от соответствующих текстов программ в книге — прежде всего тем, что программы на дискете снабжены более подробными комментариями и псевдокодом. Для общеизвестных алгоритмов приведены ссылки на источники, где с ними можно познакомиться более подробно. Более того, система нумерации программ сделана так, чтобы указать читателю ссылку на источники, которые можно использовать для более глубокого изучения соответствующих алгоритмов. Следует отметить, что псевдоязык использован с двоякой целью. Первую из целей мы уже отметили, что касается второй, то она заключается в том, чтобы подготовить читателя к изучению теории компиляции. Так, пояснение примеров программ на ассеблере производится не только с помощью обычных комментариев, но и с использованием фрагментов программы на псевдокоде. Такое смешанное пояснение ассемблерной реализации алгоритма не только дополнительно иллюстрирует сам алгоритм, но и показывает суть третьего и четвертого этапов .компиляции программы — генерации и оптимизации кода, так как при этом можно видеть, какие ассемблерные (машинные) конструкции соответствуют конструкциям языка высокого уровня. Завершает книгу достаточно подробный список литературы, который был использован в процессе подготовки книги и который можно рекомендовать как основу для дальнейшего изучения затронутых в ней вопросов.

 Скачать Учебник по языку Ассемблер в задачах и примерах

Учебник по языку Ассемблер в задачах и примерах screenshot
Программы разработчика

Task Scheduler ver 1.7 Task Scheduler ver 1.7
Unknown

Программа предназначена для планирования запуска процессов под Windows NT (95) по дню недели и времени суток с точностью до минуты.

Date Edit v 1.0 Date Edit v 1.0
Unknown

Еще одная надстройка для Виндов, которая позволит менять дату и время файлов прямо из Проводника(Explorer).

Вечный календарь Вечный календарь
Unknown

Отображение календаря c 1583 года в полноэкранном виде (для всего года).

Часовой v1.0 by Quant Software (FreeWare) - Rus Часовой v1.0 by Quant Software (FreeWare) - Rus
Unknown

Удобные часики с каледарем от 1753 до 9999 года.

Полиграфический калькулятор (FreeWare) - Rus Полиграфический калькулятор (FreeWare) - Rus
Unknown

Простой калькулятор, предназначенный для полиграфистов.

Альтернативные программы

Учебник по языку Ассемблер в задачах и примерах Учебник по языку Ассемблер в задачах и примерах
Unknown

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

Учебник по языку Assembler в задачах и примерах 1.0 Учебник по языку Assembler в задачах и примерах 1.0
Mike

Учебник по языку Assembler в задачах и примерах - Эту книгу можно рассматривать как своеобразную форму программного продукта.

Диагностика - ремонт - модернизация ПК 2005 Диагностика - ремонт - модернизация ПК 2005
Unknown

Эта книга, окажется важным источником информации при различного рода действиях с “Железом”, диагностике неисправностей, ремонте, модернизации.

Учебник по Delphi 6 для чайников Учебник по Delphi 6 для чайников
неизвестно

Часть I .

Иллюстрированный самоучитель по Delphi 7 для профессионалов Иллюстрированный самоучитель по Delphi 7 для профессионалов 
неизвестно

ЧАСТЬ I.

Иллюстрированный самоучитель по Delphi 7 для профе D7 Иллюстрированный самоучитель по Delphi 7 для профе D7
Березин Юрий Викторович

Краткое содержание: ЧАСТЬ I.

Учебник по технологии программирования Учебник по технологии программирования
Unknown

Приходилось ли вам когда-нибудь: тратить кучу времени на то, чтобы закодировать неверный алгоритм? использовать слишком сложную структуру данных? при тестировании программы пропустить очевидную проблему? тратить день на то, чтобы обнаружить ошибку, которую можно было бы найти за пять минут? сталкиваться с тем, что программа должна работать в три раза быстрее и использовать меньше памяти? затрачивать титанические усилия на то, чтобы перевести программу с рабочей станции на PC или наоборот? пытаться внести изменения в чужую программу? переписывать программу целиком, потому что разобраться в ней не удалось? Ну и как — понравилось? С программистами такое происходит все время.

Учебник по программированию в среде С++ Builder Учебник по программированию в среде С++ Builder
Unknown

Этот диск был задуман как руководство для самостоятельного изучения языка C/C++ в контексте его применения в среде Windows.

Easy Encrypt/Decrypt (EED) v.2 Final Easy Encrypt/Decrypt (EED) v.2 Final
The Vitche

Как и все предыдущие версии, годится для работы с любыми файлами любых размеров.

Электронная книга Электронная книга "Политика и практика маркетинга на предприятии" 1
Abatic Group.

Глава 1.

Другие программы категории

Active File Compare 2.0 Active File Compare 2.0
Евгений Баянов

Утилита для сравнения и синхронизации любых ASCII текстовых файлов в визуальном режиме; превосходный инструмент для сравнения версий исходных текстов программ на языках программирования, так как поддерживает синтаксическое выделение и непосредственное исправления найденных различий между версиями.

Icon XP Pro Icon XP Pro
Unknown

1st Page 2000 2.0 Final 1st Page 2000 2.0 Final
EVRSoft

1st Page 2000 2.

SMS Subscribe v1.01 SMS Subscribe v1.01
almaz

Если Вы хотите получать на Ваш сотовый телефон какую-либо информацию из Интернет, то можете использовать данную программу.

RV-SMS v1.0 RV-SMS v1.0
Райчев Евгений

Отправка sms-сообщений на мобильные телефоны, много операторов, записная книжка, очень проста в использовании.