84 / 12 / 1
Регистрация: 24.01.2011
Сообщений: 309
|
|
1 | |
Вопрос в стиле "Разрушители мифов"18.10.2011, 20:22. Показов 9795. Ответов 22
Метки нет (Все метки)
Скажите пожалуйста, правда ли то что чтобы возвести икс в квадрат на ассемблере нужно вручную прописать около пяти страниц программного кода?))))
0
|
18.10.2011, 20:22 | |
Ответы с готовыми решениями:
22
5 мифов о кофе Интересные Факты: 20 Самых Популярных Научных Мифов C++ в функциональном стиле: как писать в стиле C#/LINQ (без дополнительных библиотек)? Вопрос по SetParent (поэтому, наверное, это вопрос к NickStaves) Строки в стиле C |
766 / 310 / 11
Регистрация: 27.05.2011
Сообщений: 703
|
|
18.10.2011, 20:27 | 2 |
у тебя от этой лабуды уши не отвисли?
НЕТ.
1
|
84 / 12 / 1
Регистрация: 24.01.2011
Сообщений: 309
|
|
18.10.2011, 20:30 [ТС] | 3 |
но это все же сложнее чем в бейсике к примеру?
0
|
766 / 310 / 11
Регистрация: 27.05.2011
Сообщений: 703
|
||||||
18.10.2011, 20:33 | 4 | |||||
1
|
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
|
|
18.10.2011, 21:53 | 5 |
XOR DX,DX - лишнее
0
|
766 / 310 / 11
Регистрация: 27.05.2011
Сообщений: 703
|
|
18.10.2011, 22:32 | 6 |
да, xor лишний, ИЗВИНЯЮСЬ, просто долго с асмом не сидел и чёта перепутал.
P.S.: dx нужно очищать при делении.
0
|
Всегда не хватает времени
119 / 119 / 20
Регистрация: 15.10.2009
Сообщений: 493
|
|
18.10.2011, 22:51 | 7 |
извиняюсь, команда умножения разве не работает с аккумулятором? Вместо АХ нужно пользоваться AL, хотя я могу быть не прав, объясните пожалуйста
0
|
766 / 310 / 11
Регистрация: 27.05.2011
Сообщений: 703
|
||||||
18.10.2011, 23:04 | 8 | |||||
я не совсем понял вопрос. как-нить по другому выразись.
вот справка по mul:
0
|
Всегда не хватает времени
119 / 119 / 20
Регистрация: 15.10.2009
Сообщений: 493
|
|
18.10.2011, 23:07 | 9 |
ну смотри, как компилятор понимает что значение для деления нужно брать именно с АХ
mov AX,5 div BH как она знает что именно делим BH/AX
0
|
766 / 310 / 11
Регистрация: 27.05.2011
Сообщений: 703
|
|
18.10.2011, 23:29 | 10 |
точно не скажу, но например, когда в универе нам давали задание написать компилятор, я тупо создал списки:
с регистрами байтами. (ah,al и т.п.) и с регистрами словами(ax и т.д.) а при компиляции просто сопоставлял операнды, соответствуют они друг другу или нет. Добавлено через 12 минут здесь наоборот, AX/BH. синтаксис у команды такой.
0
|
Ушел с форума
16338 / 7659 / 1075
Регистрация: 11.11.2010
Сообщений: 13,697
|
|
19.10.2011, 04:07 | 11 |
Сообщение от Mischanja
2) кода требуется используют AL или AX или EAX всё зависит от поставленной задачи
0
|
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,933
|
|
19.10.2011, 08:56 | 12 |
0
|
Ушел с форума
16338 / 7659 / 1075
Регистрация: 11.11.2010
Сообщений: 13,697
|
|
19.10.2011, 09:33 | 13 |
Сообщение от nitromiha
не понятно ассемблер для какого микропроцессора ТС имеет ввиду, у всех intel x86 есть не одна команда умножения -- различаются знаковое умножение imul (с одним, двумя, тремя операндами) или умножение без знака mul, поддерживается умножение вещественных чисел командой fmul, умножать можно командой AAD. С появлением Пентиумов появилось mmx/xxm-умножение командами PMADDWD, PMULHW, PMULHUW, PMULLW, PMULHRSW, PMULUDQ, PMADDWD. Если речь о микропроцессорах intel 4004 или 8080 1) то их можно найти только в музее или на помойке т.е. практической ценности программы для них не представляют 2) умножение при помощи сложения и сдвигов можно уложить в два десятка команд, но это займет от силы одну "страницу программного кода" 3) с чего вдруг программы стали измерятся в "страницах программного кода"? Эффективность программ на ассемблере измеряется а) в скорости вычисления б) в байтах, которые программы занимают в памяти... Не по теме: alexcoder, а внешние функции если подключить?
0
|
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,933
|
|
19.10.2011, 09:48 | 14 |
Mikl___,для x86, ОС ДОС:
Функция преобразования строки в float-число: 94 строки Функция вывода float-числа: 107 строк Все остальное: ~20 строк. Если принять, что на страницу помещается 30 строк, это более 7 страниц. Функции довольно оптимизированные, мусора в них мало. С другой стороны, та же программа в MASM32 поместится в 30 строк, поскольку есть функции API и библиотеки MASMа.
0
|
Ушел с форума
16338 / 7659 / 1075
Регистрация: 11.11.2010
Сообщений: 13,697
|
|
19.10.2011, 12:18 | 15 |
alexcoder, прикрепите пожалуйста листинги
"Функция преобразования строки в float-число: 94 строки Функция вывода float-числа: 107 строк" а я попробую уложится в меньшее количество без использования WinAPI, 7 страниц это явный перебор
0
|
766 / 310 / 11
Регистрация: 27.05.2011
Сообщений: 703
|
|
19.10.2011, 12:21 | 16 |
alexcoder, ты читал тему? там не сказано, что всё от а до я делать надо,
там просто возведение в квадрат. я понимаю Mikl___ и ты умные люди, но зачем разводить такие споры, по мелочам?
0
|
84 / 12 / 1
Регистрация: 24.01.2011
Сообщений: 309
|
|
19.10.2011, 19:32 [ТС] | 17 |
да это просто один мой знакомый сказал что слышал такое про ассемблер))) а страници - это для того, чтобы показать что это очень сложно!! и много кода!)))
0
|
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,933
|
|||||||||||
19.10.2011, 21:51 | 18 | ||||||||||
Сообщение было отмечено как решение
Решение
9
|
Ушел с форума
16338 / 7659 / 1075
Регистрация: 11.11.2010
Сообщений: 13,697
|
||||||
20.10.2011, 11:28 | 19 | |||||
0
|
4174 / 1824 / 218
Регистрация: 06.10.2010
Сообщений: 4,111
|
||||||
20.10.2011, 19:25 | 20 | |||||
Mikl___
Немного короче на FASM.
2
|
20.10.2011, 19:25 | |
20.10.2011, 19:25 | |
Помогаю со студенческими работами здесь
20
Разбор в стиле Строка в стиле С ToolBar в стиле XP Алгоритм в стиле с++ Прерывания в стиле С++ макропроцессор в стиле с Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |