Я ен могу ассемблировать файлы, при попытке ассемблирования
MASM выдаёт ошибку:FATAL error A1000:cannot open fiel: prog.asm /AT
Я не могу понять, как узнать прописан ли MASM в PATH, где находится PATH? И как узнать находится ли файл prog.asm в текущем каталоге?
Ответ
Насчет ошибки.
Ты наверняка даешь команду типа d:\masm\bin\ml.exe prog.asm /AT
Чтобы все было нормально, перепиши файл prog.asm в директорию d:\masm\bin\ (я имею в виду, ту, в которой у тебя находятся файлы masm.exe и ml.exe).
Чтобы узнать прописан ли MASM в PATH'е, открой файл c:\autoexec.bat каким-нибудь текстовым редактором и найди строчку, которая выглядит примерно так PATH = C:\WINDOWS;C:\WINDOWS\COMMAND;C:\WINDOWS\SYSTEM;
в ней должны быть перечисленны и другие директории, если среди них есть та, в которую установлен MASM, то он прописан, если нет, то нет.
Текущей является директория, в которой находится файл, который ты запускаешь.
Пример:
ты даешь команду
d:\masm\bin\ml.exe - тукущая d:\masm\bin\
что бы проверить находится ли файл в этой директории, зайди в нее
и посмотри.
(в ДОС с помощь команд cd и dir).
Отправил: Anatol Эксперт отправил ответов (всего): 4
Экспертная группа: Пользовательская работа c DOS
Вопрос №119
Здравствуйте!
У меня заморочки с ассемблированием программ: Я полностью устанавливаю Масм6.11 (включая версию 5.1); Несколько раз получалось всё хорошо (образовывалось 2 файла), но потом только один-prog.obj который приходилось ещё и "линковать".
Почему у меня всё как не у людей?
Ответ
Наверное используете не ML ,а masm. Чтобы получить comфайл нужно сделать следующее:
ml prog.asm /AT
Создается файл prog.com
и т.д. Значит чтобы прописать МАSM в Path надо сделать следующее:
1) открыть autoexec.bat (edit c:\autoexec.bat)
2) добавить в него строку path=(путь к компилятору);
3)сохранить изменения и перезагрузиться.
Для того чтобы узнать, находится ли файл в текущем каталоге (если ты не пользуешься оболочкой) можно напечатать команду dir, находясь в каталоге, который тебе нужен или более конкретно в твоём случае dir *.asm, то есть показать все файлы с расштрением .asm в текущем каталоге.
Отправил: Алексей Чатов (http://www.bobrland.com - Плотина Бобров)
Эксперт отправил ответов (всего): 7
Экспертная группа: Пользовательская работа c DOS
Вопрос №121
Уважаемый эксперт!
Я ен могу ассемблировать файлы, при попытке ассемблирования
MASM выдаёт ошибку:FATAL error A1000:cannot open fiel: prog.asm /AT
Я не могу понять, как узнать прописан ли MASM в PATH, где находится PATH? И как узнать находится ли файл prog.asm в текущем каталоге?
Ответ
path прописывается в файле c:\autoexec.bat в следующем виде:
и т.д. Значит чтобы прописать МАSM в Path надо сделать следующее:
1) открыть autoexec.bat (edit c:\autoexec.bat)
2) добавить в него строку path=(путь к компилятору);
3)сохранить изменения и перезагрузиться.
Для того чтобы узнать, находится ли файл в текущем каталоге (если ты не пользуешься оболочкой) можно напечатать команду dir, находясь в каталоге, который тебе нужен или более конкретно в твоём случае dir *.asm, то есть показать все файлы с расштрением .asm в текущем каталоге.
Отправил: Алексей Чатов (http://www.bobrland.com - Плотина Бобров)
Эксперт отправил ответов (всего): 6
Экспертная группа: Пользовательская работа c DOS
Вопрос №123
Здравствуйте уважаемые эксперты!
Скажите пожалуйста, можно ли заставить SoftIce работать с WinME.
Спасибо!
Ответ
Честно сказать - никогда не сталкивался с этим. Т.к. ВСЕ мои друзья, которые юзать Айс, сидят либо в НТ либо в 98. Но, думаю, что можно. Попробуйте. Ведь эксперементировать не запрещено!
Отправил: K.A. NiCK Эксперт отправил ответов (всего): 5
Экспертная группа: Пользовательская работа с Windows
Вопрос №127
Обьясните, пожалуйста, принцип работы алгоритма Брезенхема по рисованию прямой линии на экране.
Ответ
В принципе ничего сложного!
линия состоит из точек!
И разбивается на горизонтальные отрезки.
(Ну я обхясняю упрощенно, детально мне лень :)
И потом идет построение.
несколько точек в ряд, переход на следующую строку,
Опять несколько точек в ряд.. и тд...
Все вполне реализуется целочисленно. в чем плюс собственно и есть.
Отправил: Dron Эксперт отправил ответов (всего): 25
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
Вопрос №123
Здравствуйте уважаемые эксперты!
Скажите пожалуйста, можно ли заставить SoftIce работать с WinME.
Спасибо!
Ответ
Конечно можно ! Нужно скачать соответствующую версию софт айса
Отправил: sasha Эксперт отправил ответов (всего): 13
Экспертная группа: Пользовательская работа с Windows
Вопрос №125
Не знаю в какую группу задать свой вопрос... нету группы "Ассемблер для профессионалов" :))
И у экспертов тоже бывают вопросы! :)
А вопрос у меня вот какой:
Защищенный режим, переключение задач.
Можно делать тремя способами. jmp через шлюз, call через шлюз, или прерывание.
В нормальных системах используется прерывание.
Причем прерывание по времени, как я понимаю...
А теперь внимание вопрос! неужели все так примитивно?
Ведь таким образом можно реализовать реальную многозадачность и на 8086! ну и что что скорость маленькая...
Раньше я почему-то думал что переключение задач происходит через какое нибудь специальное прерывание, реализованное в процессоре, в механизме переключения задач... но делать все через таймер?!? как то не продвинуто...
Может я в чем-то ошибаюсь, подскажите кто в курсе.
Ответ
А зачем усложнять жизнь??
Защищённый режим создан для защиты. Например, в реальном режиме Вы
спокойно можете записать чего-нибудь в ядро ОС и компьютер спокойно
может зависнуть! А в защищённом режиме, как Вы, я надеюсь, знаете,
существуют уровни привилегий, обозначающие, кто к какому ресурсу
компьютера может обращаться, а кто нет.
А аппаратная реализация переключения задач на 286+ состоит в сохране-
нии всех регистров и стека программ в специальной области памяти -
TSS - без участия ядра. Коду ядра ОС нужно только инициировать
переключение задачи, а всё остальное проц сделает сам. А уж как там
ОС будет их переключать, это решает программист.
Отправил: Nik Эксперт отправил ответов (всего): 9
Экспертная группа: Оптимизация программ
Вопрос №127
Обьясните, пожалуйста, принцип работы алгоритма Брезенхема по рисованию прямой линии на экране.
Ответ
Это курс растровой графики.
Так что немного не по теме :).
Ответ на этот вопроссмотри
тут:
http://stratum.pstu.ac.ru/lectures/Kgrafic/html/dopolnit/rojers/25.htm
или тут:
http://alglib.chat.ru/paper/2dgraph.html
Отправил: Anatol Эксперт отправил ответов (всего): 5
Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS
(C) Москва, 2001. Авторское право принадлежит Калашникову О.А.
Публичное размещение материала из рассылки, а также его использование
полностью или частично в коммерческих или иных подобных целях без письменного
согласия автора влечет ответственность за нарушение авторских прав.