Вопрос № 17330: Здравствуйте уважаемые эксперты, подскажите пожалуйста могу ли я использовать MASM32 Editor в качестве компилятора и линковщика или это все-таки просто прога для набора текста программы? если да то чем мне лучше пользоваться?у меня win2000 и Masm6.11...Вопрос № 17337: Уважаемые эксперты подскажите:
У меня установлена Win 2000, MASM 6.11 я пропатчил до 6.14-патч был скачан отсюда http://support.microsoft.com/kb/q228454/
но все равно проблема не решена: компилируя например PROG01.asm,я набираю в пуск-выполни...Вопрос № 17338: Уважаемые эксперты! Пытаюсь освоить ассемблер по рассылке Калашникова О.А. Установил MASM 6.11. В коммандной строке (CMD) вводил все, согласно рекомендациям автора. В ответ система выдала сообщение: "ML.EXE не является приложением Win32". У...Вопрос № 17340: Доброе время суток, уважаемые эксперты!
Чего-то не могу разобраться в чем дело -- прога виснет и все тут ! Может я че накосячил? Или одно из двух? Хочу чтоб символы на экран выврдились последовательно после нажатия клавиши.
С уважением,Мас...
Вопрос № 17330
Здравствуйте уважаемые эксперты, подскажите пожалуйста могу ли я использовать MASM32 Editor в качестве компилятора и линковщика или это все-таки просто прога для набора текста программы? если да то чем мне лучше пользоваться?у меня win2000 и Masm6.11 ,запускаю ML.exe - ничего не происходит,может что-то я не так делаю или версию надо позднее,но 6.13 нигде не могу найти
Заранее благодарен
Отправлен: 22.02.2005, 12:04
Вопрос задал: Никифоров Андрей (статус: Посетитель)
Всего ответов отправлено: 1
Отвечает: Вiктор
Здравствуйте, Никифоров Андрей!
masm32 - у него свои МЛ и ЛИНК, 32-битные, если я не ошибаюсь.
из менюшек масм32 можно запускать на компиляцию и линковку вашу программу.
(сам пробовал)
не знаю как будет работать масм32 редактор с МЛ 6.11, но по идее должен
нормально работать, если писать под дос. Но для этого надо будет его настраивать.
проверьте как вы его (ML.exe ) запускаете.
вряд-ли масм 6.11 может "ничего не делать"
в крайнем случае он выдаёт сообщеия про ошибки.
если вы его запускаете не из дос-окошка, то попробуйте в дос-окошке. по крайней
мере МЛ должен написать свою версию.
Ответ отправил: Вiктор (статус: 2-ой класс)
Отправлен: 23.02.2005, 16:08 Оценка за ответ: 3 Комментарий оценки: Спасибо,Виктор,да с праздником вас,попробую
Вопрос № 17337
Уважаемые эксперты подскажите:
У меня установлена Win 2000, MASM 6.11 я пропатчил до 6.14-патч был скачан отсюда http://support.microsoft.com/kb/q228454/
но все равно проблема не решена: компилируя например PROG01.asm,я набираю в пуск-выполнить:c:\MASM611\bin\ML.EXE prog01.asm, после чего создаеться prog01.exe. Запустив выдается: 16-разрядная подсистема MS-DOS,
C:\MASM611\bin\prog01.exe
Процессор NTVDM обнаружил недопустимую инструкцию.
CS:0000 IP:0077 OP:f0 37 05 0e 02 для завершения работы нажмите кнопку закрыть.
Что мне делать,подскажите плиз,заранее благодарен
Отправлен: 22.02.2005, 14:27
Вопрос задал: Никифоров Андрей (статус: Посетитель)
Всего ответов отправлено: 4
Отвечает: John Freeman
Здравствуйте, Никифоров Андрей!
Это спроси у своих виндов, а не у MASM'a , могу поспорить он так на все DPMI точно ругается, а на остальное - на большую часть...
Ответ отправил: John Freeman (статус: Специалист)
Отправлен: 22.02.2005, 14:49 Оценка за ответ: 4 Комментарий оценки: пасибки-значит пора сносить винду :)
Отвечает: AxMAD
Здравствуйте, Никифоров Андрей!
Возможно вы используете прямой доступ к памяти иили используете прерывания BIOS!
Лучше запускать из голого доса или из винды 9598...
Ответ отправил: AxMAD (статус: Студент)
Отправлен: 22.02.2005, 18:27
Отвечает: Стас
Здравствуйте, Никифоров Андрей!
Вероятнее всего все таки ошибка в программе.
Лучше всего было бы посмотреть даже не исходник, а ваш готовый скомпилированный EXE.
Дело либо в нем, либо винда битая.
Ответ отправил: Стас (статус: Практикант)
Отправлен: 23.02.2005, 01:07 Оценка за ответ: 4 Комментарий оценки: Спасибо Стас,попробую
Отвечает: Вiктор
Здравствуйте, Никифоров Андрей!
ну что тут скажешь...
проверь всё ещё раз.
если не поможет - я думаю придётся доставать новый масм.
лично у меня масм работает нормально.
удачи в борьбе с глюками!
Ответ отправил: Вiктор (статус: 2-ой класс)
Отправлен: 23.02.2005, 16:14
Вопрос № 17338
Уважаемые эксперты! Пытаюсь освоить ассемблер по рассылке Калашникова О.А. Установил MASM 6.11. В коммандной строке (CMD) вводил все, согласно рекомендациям автора. В ответ система выдала сообщение: "ML.EXE не является приложением Win32". У меня P4 c WinXP HE. Что надо сделать для работоспособности MASM под WinXP?
Отправлен: 22.02.2005, 14:51
Вопрос задал: vvsin (статус: Посетитель)
Всего ответов отправлено: 1
Отвечает: Bob Johnson
Здравствуйте, vvsin! Это очень здорово, что у тебя P4! У меня тоже Р4 и я очень за тебя рад! :) Дело в том, что файл ml.exe находится в подкаталоге BIN того каталога, куда ты установил MASM. Скорее всего этот каталог не прописан в переменной PATH и система не может найти файл ml.exe. Вариантов два - пропиши путь к нему или пиши программу непосредственно в этом каталоге. Второй вариант крайне не рекомендуется :)
* EMan2.0: ---===*** Debug mode ***===---
Ответ отправил: Bob Johnson (статус: Академик)
Отправлен: 24.02.2005, 00:50
Вопрос № 17340
Доброе время суток, уважаемые эксперты!
Чего-то не могу разобраться в чем дело -- прога виснет и все тут ! Может я че накосячил? Или одно из двух? Хочу чтоб символы на экран выврдились последовательно после нажатия клавиши.
С уважением,Мас
Приложение:
Отправлен: 22.02.2005, 15:41
Вопрос задал: mac (статус: Посетитель)
Всего ответов отправлено: 3
Отвечает: AxMAD
Здравствуйте, mac!
Да! Чё-то вы тут замутили!
У вас тут:
> fig endp
>
>mov ah,10h
>int 16h
>int 20h
Ответ отправил: AxMAD (статус: Студент)
Отправлен: 22.02.2005, 18:36
Отвечает: Стас
Здравствуйте, mac!
Все нормально за исключением 2 моментов:
fig: mov ah,10h; int 16h - портит регистр AX? поэтому:push ax; call fig; pop ax
И второе - это конечно вынести процедурку fig за текст программы. А то строки
mov ah,10h
int 16h
int 20h
никогда не сработают.
Ответ отправил: Стас (статус: Практикант)
Отправлен: 23.02.2005, 01:02
Отвечает: psevdo
Здравствуйте, mac!
Извини, я не особо разбирался в твоей проге. Насколько мне известно процедуры нужно объявлять в самом конце программы, отдельно от основной(можно конечно в любом, но потом придется перепрыгивать через них с помощью команды безусловного перехода jmp). У тебя я заметил:
.......
inc al ///////основная программа
call fig///////вызов процедуры
loop Next_screen/////////цикл
//объявление процедуры//
fig proc
mov ah,10h
int 16h
ret
fig endp
//далее основная программа
mov ah,10h
int 16h
int 20h
.........
Т.е. при выходе из цикла Next_screen( а в теле этого цикла ты вызывал процедуру fig), программа снова пойдет в тело процедуры fig.
Ответ отправил: psevdo (статус: 1-ый класс)
Отправлен: 23.02.2005, 16:02