Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.08.2018, 17:23   #1
mishganmishg
Новичок
Джуниор
 
Регистрация: 14.08.2018
Сообщений: 62
Радость asm для начинающих

Листинг 11.1. "Скелет" нашей будущей оболочки
Код:
CSEG segment
assume cs:CSEG, ds:CSEG, es:CSEG, ss:CSEG
org 100h
Begin_shell:
; Проверим видеорежим
call Check_video
; Выведем сообщение-приветствие
mov ah,9
mov dx,offset Mess_about
int 21h
; Вызовем главную процедуру
call Main_proc
; Сюда мы вернемся, только когда пользователь решит выйти из программы.
int 20h
; Здесь будут идти процедуры в произвольном порядке
; Главная процедура, где будут происходить все действия
include main.asm
; Процедуры работы с дисплеем:
include display.asm
; Процедуры работы с файлами:
include files.asm
; Процедуры работы с клавиатурой:
include keyboard.asm
_____
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 23.08.2018 в 17:51.
mishganmishg вне форума Ответить с цитированием
Старый 23.08.2018, 17:23   #2
mishganmishg
Новичок
Джуниор
 
Регистрация: 14.08.2018
Сообщений: 62
По умолчанию

; Тексты, сообщения:
include messages.asm
; И другие. Со временем добавим...
CSEG ends
Begin_shell endp

занимаюсь по книге калашникова пишет следующее

unexpected end of file encouneterd

Сохраните этот файл под именем Sshell11.asm (как это сделать — см. далее). Дабы не запутаться, давайте договоримся, что Sshell — это сокращение Super shell (так мы нескромно назовем нашу оболочку), а цифра указывает на главу, к которой относится этот файл (в данном случае — главу 11).
Вы видите здесь новый оператор (директиву): include. Эта директива именно программы-ассемблера (MASM/TASM): она не будет занимать места в ассембли-рованной программе. Директивой include очень удобно пользоваться в случае, ес-ли код программы довольно большой. Далее рассмотрим это на примере.
Что нужно сделать теперь? В каталоге, где будет находиться ассемблерный го-ловной файл (приведен выше), необходимо создать еще пять файлов (пока что пус-тых, с нулевой длиной): main.asm, display.asm, files.asm, keyboard.asm, messages.asm.
Как создать и сохранить все необходимые ассемблерные файлы? Нажмите в оболочке (Far Manager, Norton Commander и т. п.) комбинацию клавиш <Shift>+<F4>. Введите соответствующее имя (перечислены выше). Нажмите кла-вишу <Enter>, а затем <F2> и <Esc>. Должно все получиться.
Если у вас нет архива файлов-приложений в готовом для ассемблирова- ния DOS-формате, то вы можете скачать их в упакованном виде c сайта http://www.Kalashnikoff.ru/.
Итак, начало готово. Можно нашу оболочку ассемблировать. Обратите внима-ние, что среди файлов есть Sshell11.asm. Это наш головной файл. Его и нужно бу-дет ассемблировать.

сначала думал нету оператора вывода end


___
не используйте форум как чат - если есть что добавить к своему крайнему сообщению в теме - используйте для этого кнопку "Правка"

Модератор

Последний раз редактировалось Serge_Bliznykov; 23.08.2018 в 17:52.
mishganmishg вне форума Ответить с цитированием
Старый 28.08.2018, 22:46   #3
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

mishganmishg, дружище ты гонишь, асм не твоё руби раднюю
мне думается, твоё какие нибуль фэйсы и пролая лабуда.
Нашедшего выход - затаптывают первым..

Последний раз редактировалось R71MT; 28.08.2018 в 22:49.
R71MT вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Инструкция по созданию заготовки для 2D игр (для начинающих) 8Observer8 Gamedev - cоздание игр: Unity, OpenGL, DirectX 31 20.03.2023 02:01
C++ для начинающих a_Alise Помощь студентам 2 27.03.2016 10:00
C++ для начинающих Haruko_ Помощь студентам 0 23.10.2012 21:41
PHP для начинающих Аллен PHP 1 22.10.2012 08:21
С++ для начинающих Maxim1 Общие вопросы C/C++ 10 31.05.2010 00:22