0 / 0 / 0
Регистрация: 05.07.2011
Сообщений: 53
|
|
1 | |
Ассемблер в паскале: как загрузить массив во встроенный ассемблер и произвести над любым из его чисел сложение(вычитание).03.05.2012, 23:25. Показов 7640. Ответов 13
Метки нет (Все метки)
хочу написать программу в паскале с использованием встроенного ассемблера, но прежде чем начать споткнулся на таких вопросах:Не знаю как загрузить в ассемблер массив и в какие именно регистры его загружать?как выбирать отдельный элемент массива и проводить над ним операции(сложения, вычитания).
Допустим имеется одномерный массив из 10 чисел a: array [1..10] of integer = (1,2,4,5,7,1,1,1,1,5); как его загрузить в встроенный ассемблер и произвести над любым из его чисел сложение(вычитание). Что за функция word ptr и что означают регистры в квадратных скобках? Приведите любой пример где можно понять логику моих вопросов. Кто откликнулся спасибо за помощь заранее!!
0
|
03.05.2012, 23:25 | |
Ответы с готовыми решениями:
13
Ассемблер. Сложение шестнадцатиричных чисел\вычитание двоичных Встроенный ассемблер Си, одномерный массив Встроенный ассемблер. Определить сумму отрицательных чисел Вычитание чисел с плавающей запятой в формате double ассемблер |
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
04.05.2012, 00:31 | 2 |
Сообщение от Rus7am
Там процедура, ф-ция возвращет результат - AL: byte/char, AX:integer, DX:AX - long или указатель. "word ptr2 - тривиальное приведение типа, "регистры в квадратных скобках" - индексы. Паскаль какой? TP/FPC/VP?
0
|
0 / 0 / 0
Регистрация: 05.07.2011
Сообщений: 53
|
|
04.05.2012, 10:35 [ТС] | 3 |
0
|
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
||||||
04.05.2012, 11:33 | 4 | |||||
ВотЪ:
0
|
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
04.05.2012, 11:48 | 6 |
Искандар, Я не знаю, откуда ты берешь левые дистры, уже второй раз грабли. http://old-dos.ru/files/49/1.html
0
|
116 / 136 / 0
Регистрация: 15.04.2012
Сообщений: 1,031
|
|
04.05.2012, 13:16 | 8 |
По моему Integer - двойное слово. Тогда надо вместо директивы word ptr брать dword ptr. А то ты берешь вначале нижнее слово, а потом верхнее слово, а тебе, как я понимаю нужно полное число.
0
|
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
04.05.2012, 13:20 | 9 |
programmisto, А что такое тогда long?
Сообщение от programmisto
0
|
116 / 136 / 0
Регистрация: 15.04.2012
Сообщений: 1,031
|
|
04.05.2012, 13:25 | 10 |
Понятия не имею. Только если массив из двойных слов неверно читать все число при помощи Word ptr.
0
|
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
||||||
04.05.2012, 13:47 | 11 | |||||
А тебе не кажется что я бы написал
Не по теме: P.S. Как-нибуль слеплю из хистори твоих мессаг "Записки быдлокодера Обломова" и выложу в здешний "Хумор" - пусть страна знает своих героев.:dance3:
0
|
0 / 0 / 0
Регистрация: 05.07.2011
Сообщений: 53
|
|
04.05.2012, 16:21 [ТС] | 12 |
Что здесь выполняют команды: LDS, shl и что означает выражение @a???
В какие регистры записывать массив? Можно в AX, BX, CX, DX ?
0
|
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
04.05.2012, 16:37 | 13 |
Сообщение от Rus7am
Сообщение от Rus7am
Сообщение от Rus7am
Сообщение от Rus7am
0
|
0 / 0 / 0
Регистрация: 05.07.2011
Сообщений: 53
|
|
06.05.2012, 08:44 [ТС] | 14 |
Спасибо за ответы разобрался немного...
0
|
06.05.2012, 08:44 | |
06.05.2012, 08:44 | |
Помогаю со студенческими работами здесь
14
Как подключить встроенный ассемблер (__asm)? Встроенный ассемблер, как работать со строками? Встроенный ассемблер. Как организовать цикл? Произвести сложение X+Y и вычитание X-Y чисел с плавающей запятой Встроенный ассемблер C++ Встроенный ассемблер Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |