Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
 Аватар для Dimarik__
21 / 21 / 3
Регистрация: 29.04.2010
Сообщений: 444

Посоветуйте книжку по ассемблеру для MASM

10.02.2011, 21:02. Показов 2911. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сейчас читаю книгу Олега Калашникова. Честно говоря, понимается язык с огромнейшим трудом. Уже прочитал 20 страниц, а сам принцип так и не понял. Может кто-то может посоветовать книжку где более простым языком объяснено программирование на ассемблере для WASM? Я именно хочу для WASM, потому что после прочтения статьи уважаемого всеми Криса Касперски https://www.evilfingers.com/pu... slator.pdf
понял, что WASM рулит))))
Если кто может, объясните как работает эта программа:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CSEG segment
org 100h
 
Start:
 
    mov ah,9; загружаем в регистр ah число 9
    mov dx,offset Message; загружаем в регистр dx адрес сообщения для вывода
    int 21h
    mov ah, 10h;????
    int 16h 
    int 20h; в результате этого прерывания программа возвращается туда откуда её вызывали (загружали)
    ; это что-то вроде функции выхода в языках высокого уровня
 
Message db 'Нажмите любую клавишу!$'
 
CSEG ends
end Start
Автор пишет: "Работать с клавиатурой позволяет прерывание 16h.... Чтобы заставить программу ждать нажатия пользователем любой клавиши, нужно вызывать функцию 10h прерывания 16h".
Так прерывания - это же как бы и есть функция? Или внутри прерываний тоже свои функции есть что ли?
Почему бы просто не вызывать int 10h????



P.S. Люди, выручайте. Посоветуйте книжку по ассемблеру для MASM в которой автор реально всё понятно и подробно объясняет. А то это ппц.....
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.02.2011, 21:02
Ответы с готовыми решениями:

Видеоуроки по Ассемблеру MASM/TASM (для DOS) на русском языке
Всем доброго времени суток. Вобщем, ищу видеоуроки на русском языке по Ассемблеру. Нужно для подготовки к экзамену (нужно будет...

Ввести число, вывести сумму цифр этого числа
Привет всем нужна помощь в решении двух задач. Задача №1. Пользователь вводит число,нужно вывести сумму цифр этого числа, например...

Посоветуйте хорошую литературку по ассемблеру
Посоветуйте литературу по ассемблеру, чтобы там было описано и про 16 и 32 - х разрядные программы. Да, и мож кто знает какой - нибудь...

4
273 / 268 / 11
Регистрация: 24.12.2010
Сообщений: 328
10.02.2011, 23:09
Автор пишет: "Работать с клавиатурой позволяет прерывание 16h.... Чтобы заставить программу ждать нажатия пользователем любой клавиши, нужно вызывать функцию 10h прерывания 16h".
Так прерывания - это же как бы и есть функция? Или внутри прерываний тоже свои функции есть что ли?
10h в ah является как-бы параметром, подфункцией для прерывания int 16h, их у этого прерывания несколько, и все они работают с клавиатурой. Точно также 9 в ah и offset Message в dx суть параметры для вывода на экран строки прерывания int 21h.
Посоветуйте книжку по ассемблеру для MASM в которой автор реально всё понятно и подробно объясняет.
Совсем недавно тоже не знал, с какого боку укусить этот пирог (асм), помогла начать вот эта книжка, ничего более доступного пока не встречал:
Вложения
Тип файла: rar Язык ассемблера для IBM PC Нортон.П, Соухе Д.rar (8.56 Мб, 190 просмотров)
1
 Аватар для Dimarik__
21 / 21 / 3
Регистрация: 29.04.2010
Сообщений: 444
12.02.2011, 18:01  [ТС]
пока что только начинаю изучать ассемблер... непонятны несколько вещей:
1. В регистрах записывается информация. То есть они как бы - переменные в языках высокого уровня. То есть при написании программ на фсм у нас ограниченное число перменных?О_о
2.
mov ah,9; загружаем в регистр ah число 9
mov dx,offset Message; загружаем в регистр dx адрес сообщения для вывода
вот мы выводим сообщение на экран. Со второй строкой всё понятно. А что делает первая строка? Почему мы именно 9 загружаем и именно в регистр ah
И вывод сообщения заканчивается вызовом прерывания 21h. Оно что делает? Завершает вывод информации на экран?
3. Аналогично, если не трудно, подобно первому вопросу, объясните пожалуйста, что построчно делают эти строки
mov ah, 10h;????
int 16h

Добавлено через 9 минут
P.S. мой второй и третий вопрос свидетельствует что у меня конкретный пробел в фундаментальных знаниях ассемблера. Только я не совсем понимаю что мне надо прочитать чтоб его ликвидировать. Где понятно написано про то, какими функциями прерывания пользуются, каждая за что отвечает и какими регистрами пользуются функции?
0
4190 / 1838 / 221
Регистрация: 06.10.2010
Сообщений: 4,124
12.02.2011, 19:04
http://www.codenet.ru/progr/dos/
0
13 / 13 / 5
Регистрация: 29.06.2011
Сообщений: 85
09.06.2012, 19:09
Цитата Сообщение от Dimarik__ Посмотреть сообщение
пока что только начинаю изучать ассемблер... непонятны несколько вещей:
1. В регистрах записывается информация. То есть они как бы - переменные в языках высокого уровня. То есть при написании программ на фсм у нас ограниченное число перменных?О_о
2.
mov ah,9; загружаем в регистр ah число 9
mov dx,offset Message; загружаем в регистр dx адрес сообщения для вывода
вот мы выводим сообщение на экран. Со второй строкой всё понятно. А что делает первая строка? Почему мы именно 9 загружаем и именно в регистр ah
И вывод сообщения заканчивается вызовом прерывания 21h. Оно что делает? Завершает вывод информации на экран?
3. Аналогично, если не трудно, подобно первому вопросу, объясните пожалуйста, что построчно делают эти строки
mov ah, 10h;????
int 16h

Добавлено через 9 минут
P.S. мой второй и третий вопрос свидетельствует что у меня конкретный пробел в фундаментальных знаниях ассемблера. Только я не совсем понимаю что мне надо прочитать чтоб его ликвидировать. Где понятно написано про то, какими функциями прерывания пользуются, каждая за что отвечает и какими регистрами пользуются функции?
Прочитайте книгу дальше. Это только один из видов переменных.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.06.2012, 19:09
Помогаю со студенческими работами здесь

Посоветуйте книжку : P
Нужна хорошая книжка для новичка в asm деле с примерами кода для console windows приложений, все делать буду с masm32. Заранее спасибо!

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

Посоветуйте книжку для чайников
Хочу попробовать голый си. Посоветуйте что-нибудь удобоваримое.

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru