![]() |
|
|
![]()
|
|
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
к сожалению я могу писать ASM коды только на flat assembler
компилятор этот неплохой, только вот не хочет он компилить некоторые команды в связи с такими обстоятельствами приходится вводи команды opcode-ми если команда цельная, такая как XLAT MOVSB токоманду просто ввести, но если в команде используются указатели на регистры или стек возникает затруднения к примеру комманда LDS в opcode пишут C5 r
скажите как мне переводить это всё безобразие и как формировать нормальный код |
|||
|
||||
| arcsupport |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 725 Регистрация: 24.10.2008 Репутация: нет Всего: 2 |
Простите, пожалуйста, а не могли бы Вы привести шапку программы.
Я подозреваю, что у Вас там имеются ошибки. |
|||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
что то вы не так делаете, FASM компилит все, и вдоль и поперек.
на мой взгляд на данный момент это самый продвинутый и поддерживаемый компилятор -------------------- |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
да трудно не согласится на FASM сделали KolibriOS и MenuetOS только разработчеки FASM решили сделать язык ассемблер по проще и теперь не разберёшь каким боком писать под это дело arcsupport, тут не шабка программы а error: illegal instruction. на каждой строчке. |
|||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
scuter
выложи код где у тебя не работает xlat -------------------- |
|||
|
||||
| scuter |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
проблема та не только в этом, нужны команды
и ещё множество других комманд Это сообщение отредактировал(а) scuter - 24.11.2011, 11:06 |
||||
|
|||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
xlatb
xlat[bx] -------------------- |
|||
|
||||
| scuter |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
500mhz, по пробуй запустить такую инструкцию
или такую
|
||||
|
|||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
и что?
lds ax,[si] Добавлено через 1 минуту не понятно что вы хотите делать с lds к примеру? -------------------- |
|||
|
||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
scuter, зачем в 34-ой строке ret 6. Во первых откуда 6? Команда ret позволяет завершить com-программу. но так как у вас бесконечный цикл, то её вообще можно убрать (она никогда не выполнится).
-------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
| scuter |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
самое главное не пробует, а пишет
FASM пишет
если заглянуть в описание команды
это означает что в FASM далеко не все команды поддерживаются |
||||||
|
|||||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
scuter, на счёт lds и др. - в качестве параметра нужно передовать не текст а адрес.
напрмер в tasm это выгядит так:
тогда es=1234h, а si=5678h. -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
именно это и требуется от команды можед быть TASM это дело поддерживает но FASM поддерживает эту комманду в другом формате
а как сделать этот offset в FASM непонятно ничего не помогает. |
|||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
не нада в фасме offset
-------------------- |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
||||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
просто
mov BX,addr -------------------- |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
спосибо, пояснение но всё таки мне нужно узнать как формировать команды
вот идёт команда с описанием с начала название команды FADD потом цифра 0-7 или r ничего не указывается /0 потом названия регистров которые используются прямо называется регистр AL, BX,DX ...... либо указывается общий формат регистра или указателя m16/32 , r/m16/32, m16/32&16/32, imm16/32, m32real так вот как перевести это дело в нормальнай вид как правильно сформировать вторую часть команды т.е. как записываются регистры m8/16/32 как такие r/m8/16/32 r8/16/32 imm8/16/32 xmm/m128 mm/m64 m64 rel8/16/32 m32real, m64real m32int и что всё таки означает эта цифорка 0-7 или r после Opcode X86 Opcode and Instruction Reference Home Это сообщение отредактировал(а) scuter - 24.11.2011, 16:19 |
|||
|
||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
http://ru.wikipedia.org/wiki/FASM -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
![]()
|
| Правила форума "Asm для начинающих" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm для начинающих | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |