Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на Assembler

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

MERCURY127



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
short Y[150][600];
short p,q;
short *pm;
short w;
int i,j;
 
struct s{
char d[12];
float r;
short g;
} s6;
 
//w = s6.g + p*q - pm[j]/Y[i][j];  
 
main(){
    __asm{
 
        lea     ebx, s6 // загружаем адрес s6
        mov     ax, [ebx+10h] // берем смещение offset g = 12+4
        mov     w, ax
        
        movsx    eax, p
        movsx     ebx, q
        imul     ebx
        add     w, ax // сложили с w
 
        mov     ecx, j
        shl     ecx, 1
        mov     eax, i
        imul     eax, 150 // множим на 150 слов (2 байта каждое)
        movsx    ebx, [Y+eax*2+ecx]
        movsx    eax, [pm+ecx]
        xor     edx, edx
        idiv    ebx
        sub    w, ax
 
    }// asm
}
 

Всего записей: 11564 | Зарегистр. 03-08-2008 | Отправлено: 19:44 06-01-2013 | Исправлено: MERCURY127, 19:45 06-01-2013
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на Assembler


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru