Общие вопросы, Вопросы по компиляции и работе с ассемблером идр. |
1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!
Общие вопросы, Вопросы по компиляции и работе с ассемблером идр. |
Account |
Сообщение
#1
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
Программа просто выводит строку. но выводит кракозябры вместо строки. Строка на русском. (Я так понял проблема с кодировкой) Как это исправить.
|
volvo |
Сообщение
#2
|
Гость |
Какой ассемблер, в какой кодировке исходник? Под какой ОСью запускаешь? Информации нужно больше...
|
Account |
Сообщение
#3
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
Masm611,WinXp.
Но проблему решил, подправил кодировку исходника и все встало на свои пути. Спасибо за наводку) Сообщение отредактировано: Account - |
Account |
Сообщение
#4
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
Привожу код проги, где при выводе используеться задержка за счет цикла в котором применяеться расширенный регистр ECX, пример взят с книги, компилю Masm611 на что ругаеться отметил в коде
Такой пример дан в книге, поэтому не могу понять в чем дело, может подскажет кто? Сообщение отредактировано: Account - |
volvo |
Сообщение
#5
|
Гость |
Цитата <---Ругаеться на db Компилирую так:Цитата(Console) F:\masm32\bin>ml -c t2.asm Microsoft ® Macro Assembler Version 6.14.8444 Copyright © Microsoft Corp 1981-1997. All rights reserved. Assembling: t2.asm F:\masm32\bin> ничего не ругается, как видишь... |
Account |
Сообщение
#6
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
Вот как я компилю и что пишет у меня
Цитата c:\masm611\bin\ml p.asm Microsoft ® Macro Assembler Version 6.11 Copyringht © Microsoft Corp 1981-1993. All rights reserved Assembling: p.asm p.asm(12): error A2008: syntax error : db |
volvo |
Сообщение
#7
|
Гость |
Ну, попробуй вот так:
ml -c /Zm p.asm Сообщение отредактировано: volvo - |
Account |
Сообщение
#8
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
volvo , твое предложение помогло, только у меня нет link16? Он поставляеться только с masm32?
И можно поподробнее поповоду Цитата /Zm - для того, чтобы включить совместимость с MASM 5.1 ведь у меня более новая версия, что это за совместимость с 5.11, непойму? И вот установил masm32 компилю как ты там выше выдает следующее Цитата C:\masm32\bin>ml -c tp.asm Microsoft ® Macro Assembler Version 6.14.8444 Copyright © Microsoft Corp 1981-1997. All rights reserved. Assembling: p.asm MASM : fatal error A1000: cannot open file : p.asm Сообщение отредактировано: Account - |
volvo |
Сообщение
#9
|
Гость |
Цитата ведь у меня более новая версия, что это за совместимость с 5.11, непойму? Правда? А чего ж ты в своей более новой версии работаешь с USE16, можно полюбопытствовать? Почему вместо вызова макроса печати строки (это все-таки макро-ассемблер, все ж реализовано, надо только подключить файл и вызвать) ты делаешь по старинке:mov ah,09h? Более новая-то она более новая, но ты ХОЧЕШЬ использовать те вещи, которые были в ходу в версии более старой, вот и обеспечивай совместимость с ней. Цитата выдает следующее Не совсем понятно, как связан файл TP.ASM и файл P.ASM? Компилируешь одно, жалуется на отсутствие другого? |
Account |
Сообщение
#10
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
volvo
Цитата Не совсем понятно, как связан файл TP.ASM и файл P.ASM? Компилируешь одно, жалуется на отсутствие другого? Это я ошибся в написании, но ошибка при ассемблировании присуствует все равно. И Скажи пожайлуста по поводу link16, где его тогда надыбать? И почему у тебя ассемблирует, а у меня нет? |
volvo |
Сообщение
#11
|
Гость |
Цитата по поводу link16, где его тогда надыбать? Этот линкер входит в установку MASM 6.14.8444, я не понимаю, почему он не присутствует у тебя. Качал файл m32v10r.zip с сайта masm32.com? Тогда разархивируй этот файл, получишь Install.exe, который ты запускал, а вот если и его разархивировать (я попробовал сделать это 7Zip-ом, получилось), то в папке bin должен лежать link16.bin (возможно, ты просто не ту инсталляцию выбрал, поэтому 16-битный линкер не распаковался при установке)...Цитата И почему у тебя ассемблирует, а у меня нет? Потому, что у меня файл открывается (не занят, сторонними приложениями, например), а у тебя - нет... Может, что-то этот файл держит, и ML просто не может его открыть? |
Account |
Сообщение
#12
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
У меня кстати не m32v10r.zip, а m32v9r.zip, ща закачаю 10 и посмотрю)
............ Все скачал 10 версию, распаковал и как ты говорил там есть link16. Попробую слинковать сейчас) ............ Слинковал, все работает, огромное спасибо за помощь) ............ Ну и я попробовал в masm611 слинковать всеже простым link и знаешь он слинковал, за счет использования директивы use16 в коде) Сообщение отредактировано: Account - |
Account |
Сообщение
#13
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
volvo, вот такой вопрос к тебе есть. В примере присутсвует вот такая прога, считывания нулевого сектора (загрузочного) и сохранения в файл считанной от туда инфы. Ассемблируеться и линкуеться нормально.
При работе ругаеться что приложени попыталось произвети прямой доступ к диску что невозможно. Может быть это из-за того что запускаеться из под винды? Сообщение отредактировано: Account - |
volvo |
Сообщение
#14
|
Гость |
Цитата Может быть это из-за того что запускаеться из под винды? Точнее - из-за того, что запускалось из-под Windows NT... В 9х это очень даже работало, NT-ветка запрещает такие "фокусы" |
Account |
Сообщение
#15
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
Ок. Спасибо, буду знать)
|
Account |
Сообщение
#16
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
volvo , опять к тебе вопрос есть)
Тут вот по книге автор говорит что в чистом асме как бы вывести десятичное число не возможно, например имется в регистре ax число 16355 и простого способа как например вывод строки, вывода чисел в асме нет, выводяться ведь символы соответствующие кодам ASCII, приводиться подпрограмма вывода в шестнадцатиричном виде, у тебя случайно не имееться кода по выводу в десятичном виде? И еще, какие есть более современные способы вывода чисел? Сообщение отредактировано: Account - |
volvo |
Сообщение
#17
|
Гость |
Цитата какие есть более современные способы вывода чисел? include F:\masm32\macros\macros.asm достаточно просто, чтобы не извращаться вот так, правда? |
Account |
Сообщение
#18
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
volvo , а ты не могбы привести полный текст программы, где просто вывод числа идет, ну а если вообще не трудно, то ввод какого ни то числа и его же вывод. А то я с программирование макросов не знаком пока, и можешь дать какую ссылку на документацию по программированию макросов и masm32? (Я конечно и сам могу поискать, но ты как профессионал может подскажешь где найти более хорошую документацию)
Сообщение отредактировано: Account - |
volvo |
Сообщение
#19
|
Гость |
.486 Цитата можешь дать какую ссылку на документацию по программированию макросов и masm32? Мне достаточно документации, идущей с MASM-ом, и самих исходников макросов. Все-таки, спроси у Гугла... |
Account |
Сообщение
#20
|
Бывалый Группа: Пользователи Сообщений: 212 Пол: Мужской Репутация: 0 |
Пытаюсь скомпилить твою прогу выдает
Цитата Assembling: p.asm Microsoft ® Incremental Linker Version 5.12.8078 Copyright © Microsoft Corp 1992-1998. All rights reserved. /z2 "p.obj" "p.exe" NUL LINK : warning LNK4044: unrecognized option "z2"; ignored p.obj : warning LNK4033: converting object format from OMF to COFF LINK : fatal error LNK1181: cannot open input file "p.exe" Это в чем проблема? ................ Открыл асмовский файл через MASM32 Editor, в нем произвел ассемблирование и линковку, и он уже ничего не выдал, что это за такое, в чем разница? там автоматом какие то дополнительные параметры что ли етот эдитор подставляет. Сообщение отредактировано: Account - |
Текстовая версия | 23.12.2024 16:24 |