Уведомления

Группа в Telegram: @pythonsu

#1 Март 21, 2008 20:48:47

Novikov Valentin
От:
Зарегистрирован: 2008-03-21
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Python & ASM

Python поддерживает Ассемлер? (в unix или в windows)



Офлайн

#2 Март 21, 2008 21:34:49

shiza
От:
Зарегистрирован: 2007-07-03
Сообщения: 1073
Репутация: +  0  -
Профиль   Отправить e-mail  

Python & ASM

да.
Есть свой байт-кодовый ассемблер ;)

Можно еще попробовать поглядеть вот эту штуку (http://mysite.verizon.net/olsongt/usersGuide.html).
Inline x86-ой.



Отредактировано (Март 21, 2008 21:47:07)

Офлайн

#3 Март 21, 2008 22:08:45

Novikov Valentin
От:
Зарегистрирован: 2008-03-21
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Python & ASM

спасибо!



Офлайн

#4 Март 21, 2008 22:15:15

$m1t
От:
Зарегистрирован: 2006-12-31
Сообщения: 104
Репутация: +  0  -
Профиль   Отправить e-mail  

Python & ASM

простите, но я не понимаю. зачем это нужно? :)



Офлайн

#5 Март 21, 2008 22:31:41

Novikov Valentin
От:
Зарегистрирован: 2008-03-21
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Python & ASM

простите, но я не понимаю. зачем это нужно?
——————————————————
Если я не ошибаюсь, то код который написан на ассемблере -выполняется гораздо быстрее чем на других языках.

И поддержка Ассемлера в Python может решить многие проблемы! (если я конечно не ошибаюсь)



Офлайн

#6 Март 21, 2008 22:40:26

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Python & ASM

Novikov Valentin
Если я не ошибаюсь, то код который написан на ассемблере -выполняется гораздо быстрее чем на других языках.
И код ассемблера, и код других компилиремых языков непосредственно не исполняется. Поэтому говорить о его скорости нельзя.
Novikov Valentin
И поддержка Ассемлера в Python может решить многие проблемы! (если я конечно не ошибаюсь)
Сомнительно. Питон язык динамичсекий, поэтому ему ассемблер не так полезен.



Офлайн

#7 Март 21, 2008 23:15:31

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Python & ASM

Использование С и С++ вполне достаточно для “ускорения” тех частей программы, которые нужно. Если скорость важна настолько что приходится использовать asm, то может быть стоит пересмотреть питон как инструмент для решения задачи? Кроме того - можно использовать ассемблерные вставки в C/C++ код, и использовать этот код из питона…

Офлайн

#8 Март 21, 2008 23:46:42

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Python & ASM

Именно.
Проблема просто переносится из “Питон и Ассемблер” в “Питон и С/С++”.
А дальше она становится неоднозначной - где провести границу между всеобщей динамичностью питона и скоростью выполнения.
У меня есть некоторый опыт и некоторые наработки. У других они свои. Сразу предупреждаю: “серебрянной пули” не бывает. Более того, переходить к “C extentions” стоит только после понимания, что возможности Питона уже исчерпаны.
Иными словами: стройте хорошую архитектуру, а потом уже ускоряете проблемные места.



Офлайн

#9 Март 21, 2008 23:50:42

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Python & ASM

А так - да. Там, где можно писать на С, можно писать и на ассемблере.
Только редко нужно. Когда писал под микроконтроллеры (вот уж где extreme) asm потребовался буквально в паре-тройке функций.
Чаще смотрел, что выдает мне gcc и правил С код. Помогало.



Офлайн

#10 Март 22, 2008 00:40:49

shiza
От:
Зарегистрирован: 2007-07-03
Сообщения: 1073
Репутация: +  0  -
Профиль   Отправить e-mail  

Python & ASM

Я могу представить, что есть круг задач (может и очень узкий), где ассемблер может пригодится.
Зачем себя ограничивать, если так может быть удобнее ;)

Кстати - если я правильно понял документацию:
Одно из преимуществ PyASM - (по сравнению с выносом в С модули) - что можно генерить ASM код динамически.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version