Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Ассемблер
 
 автор: Akira   (08.12.2005 в 01:45)   письмо автору
 
 

Вот, начал учить, кто может подсказать литературу , программы и прочее?

   
 
 автор: cheops   (08.12.2005 в 02:12)   письмо автору
 
   для: Akira   (08.12.2005 в 01:45)
 

MASM - потрясная штука и свободно распространяется...
В книгах очень много старой информации... ну кому сейчас защищённый режим интересен и секции... Хорошая книга К. Ирвин "Язык ассемблера для процессора INTEL".
Хм... только производители процессоров вам свинью подготовили :))) выучите сейчас 32-битную архитектуру, а потом будете переучиваться на 64-битную :))) Там и регистров общего назначения больше, и защищённый режим удалён вообще, ещё чего-то добавили...

   
 
 автор: Akira   (08.12.2005 в 12:15)   письмо автору
 
   для: cheops   (08.12.2005 в 02:12)
 

MASM хмм... надо пробывать, интересно стоит ли ассемблер таких усилий?

   
 
 автор: cheops   (08.12.2005 в 12:32)   письмо автору
 
   для: Akira   (08.12.2005 в 12:15)
 

Стоит, особенно если с графикой работать плотно планируете или с дисассемблированием... да и вообще знание ассемблера здорово кругозор в программировании расширяет.

   
 
 автор: Akira   (08.12.2005 в 12:35)   письмо автору
 
   для: cheops   (08.12.2005 в 12:32)
 

Ну его я буду учить это точно :) А вот пригодиться ли он - это другой разговор. А можно будет по коде тут вопросы задовать?
Да кстати, не пора ли убрать форумы php и mysql и сделать программирование и базы данных?

   
 
 автор: cheops   (08.12.2005 в 12:44)   письмо автору
 
   для: Akira   (08.12.2005 в 12:35)
 

Задавать-то можно, но я вот например 100 лет в руки MASM не брал - реальных задач с применением ассемблера практически не встречается (у меня по крайней мере), а на просто повозится времени нет. Конечно, что помню всё выложу - особенно если вопросы будут касаться программированию для Windows.

>Да кстати, не пора ли убрать форумы php и mysql и сделать программирование и базы данных?
По идеи, конечно, их так следовало назвать с самого начала, но тут конъюктурные интересы берут вверх - мы так можем в посещаемости потерять, особенно с поисковых систем.

   
 
 автор: Akira   (08.12.2005 в 12:54)   письмо автору
 
   для: cheops   (08.12.2005 в 12:44)
 

1)Конечно для windows :) Это у нас в колледже начался ассемблер, я и думаю, а почему бы не изучить по лучше?

2) А может в описании оставить?

   
 
 автор: cheops   (08.12.2005 в 13:18)   письмо автору
 
   для: Akira   (08.12.2005 в 12:54)
 

1) Дело в том, что в сущесвтует два стиля: классический ассемблер, где искусство программиста состоит в написании собственных функций и ассемблер для Windows - там наиболее продуктивен тот программист, кто лучше знает API и может исползовать уже готовые системные функции. В общем как в теквандо - бывшие боксёры лучше бъют руками, а бывшие каратисты - ногами :)))

   
 
 автор: Akira   (08.12.2005 в 13:36)   письмо автору
 
   для: cheops   (08.12.2005 в 13:18)
 

я бывший боксер :)) Но это не отвноситься к делу.
Ассемблер кросплатформенный? Он ведь работает с процессором да?
Так сказать напрямую? Или я ошибаюсь?
Какие у него возможности?

   
 
 автор: Саня   (08.12.2005 в 14:38)   письмо автору
 
   для: Akira   (08.12.2005 в 13:36)
 

Есть такой компилятор - NASM (NetWide Assembler). Он поддерживает широкий диапазон форматов объектных файлов, включая форматы Linux a.out и ELF, NetBSD/FreeBSD, COFF, Microsoft 16-bit OBJ и Win32. NASM также способен создавать простые бинарные файлы. Синтаксис NASM максимально упрощён для понимания и похож на синтаксис Intel, но слегка посложнее. Он поддерживает инструкции Pentium, P6 и MMX, а также имеет макрорасширения.

Однако есть некоторые ограничения:
научившись писать проги под NASM, нужно немного попотеть, чтобы написать то же самое под MASM, ещё для NASM нет нормальных книг и справочников, а значит, прийдётся изучать по документации. Зато несомненный плюс - код, написанный на нём можно заставить работать на любой платформе.

   
 
 автор: Саня   (08.12.2005 в 14:45)   письмо автору
 
   для: Akira   (08.12.2005 в 13:36)
 

А так, да, ассемблер кроссплатформенный язык. Только работает не напрямую с процессором.

   
 
 автор: cheops   (08.12.2005 в 22:37)   письмо автору
 
   для: Akira   (08.12.2005 в 13:36)
 

Я бы не назвал ассемблер кросплатформенным, обычно под кросплатформенностью понимают возможность выполняться на разных аппаратных платформах, C/C++, PHP - крос-платформенные, а ассембелер - нет, грубо говоря у каждого процессора - свой ассемблер, у x86 - свой, у Motorolla - свой, у DEC - свой, у Alpha - свой. Именно благодаря тому недостатку появились первые языки высокого уровня (Fortran, Basic, C и т.д.). Более того в рамках одного процессора могут существовать разные реализации ассемблера - стандартов нет. Ведь что такое ассемблер - это попытка заменить непонятные машинные команды (выполнить операцию номер такой-то) на более логичные и понятные (сложить содержимое регистров, поместить память отсюда - туда). Да, в рамках одного процессора реалиции ассемблеров похоже: архитектура и набор машинных команд одинаковы, но по деталям синтаксиса они могут отличаться: например, NASM и MASM - это не совсем одно и тоже: они близки и даже ближе чем Perl и PHP, но отличаются...

   
 
 автор: Akira   (08.12.2005 в 23:02)   письмо автору
 
   для: cheops   (08.12.2005 в 22:37)
 

ну понятно дело, что на 86 надо взор обратить :)

   
 
 автор: cheops   (08.12.2005 в 23:14)   письмо автору
 
   для: Akira   (08.12.2005 в 23:02)
 

Давно не менялась разрядность процессора... сейчас идёт переход на 64-битную архитектуру, а там и размер ячеек и их число и адресация отличаются от 32-битной. Причём в отличие от перехода с 16 бит на 32, при переходе с 32 на 64 бита увеличено число регистров общего назначения, поэтому ассемблеры будут отличаться... По сути это будет новая платформа, с возможностью обеспеченья обратной совместимости с 32-битной архитектурой.

   
 
 автор: Akira   (08.12.2005 в 23:36)   письмо автору
 
   для: cheops   (08.12.2005 в 23:14)
 

И по сути смысла в ней мало. Вот только , что туда памяти вбухать можно побольше 4 гигов.

   
 
 автор: cheops   (09.12.2005 в 02:05)   письмо автору
 
   для: Akira   (08.12.2005 в 23:36)
 

Не совсем... добавлены дополнительные регистры общего назначения - их очень не хватало, теперь для ряда операций можно снизить число тактов.

   
 
 автор: Akira   (09.12.2005 в 13:47)   письмо автору
 
   для: cheops   (09.12.2005 в 02:05)
 

Знаете ведь, чем более узкоспециализированная машина, тем быстродействие ее возрастает, чем больше универсальности, тем меньше быстродействие.
Отсюда следует, что 64 битные дадут прирост только в узкой направленности.
Опять же это все мое ИМХО, могу и ошибиться.

   
 
 автор: cheops   (09.12.2005 в 14:23)   письмо автору
 
   для: Akira   (09.12.2005 в 13:47)
 

Да в общем узкой специализации у 64 нет (скорее наоборот с добавление регистров общего назначения увеличивается гибкость), но настроящую производительность можно получить только под 64-битным кодом, 32-битный код на 64-битном процессоре сейчас выполняется медленнее, чем на 32-битном процессоре.

   
 
 автор: Akira   (09.12.2005 в 15:17)   письмо автору
 
   для: cheops   (09.12.2005 в 14:23)
 

я о том же, прирост будет 64 разрядном софте.
А его очень мало.

   
 
 автор: cheops   (09.12.2005 в 17:05)   письмо автору
 
   для: Akira   (09.12.2005 в 15:17)
 

Софт то подтянется, а вот с драйверами ситуация действительно катастрофичная, кто сейчас будет писать драйвера для девайсов 2-х летней давности... а девайсов в последнее время пруд пруди и все нужные собаки, поэтому лично я на 64 бит ещё не скоро наверное перелезу...

   
 
 автор: Akira   (09.12.2005 в 17:27)   письмо автору
 
   для: cheops   (09.12.2005 в 17:05)
 

А я вот даже не стану , если честно.

   
 
 автор: codexomega   (08.12.2005 в 06:17)   письмо автору
 
   для: Akira   (08.12.2005 в 01:45)
 

Литературу можно взять здесь:

http://softtime.ru/forum/read.php?id_forum=2&id_theme=9615&page=4

По моему в первой ссылке есть книга Зубкова в формате CHM. Вроде ничего.

   
 
 автор: Саня   (08.12.2005 в 14:14)   письмо автору
 
   для: Akira   (08.12.2005 в 01:45)
 

Под винду лучшие туториалы написаны iczelion'ом. Так же можно почитать выпуски Олега Калашникова, который учит ассемблеру с нуля.
Ссылки:
http://asm.kalashnikoff.ru - пособие Калашникова
http://win32asm.cjb.net - домашняя страничка iczelion'а
http://wasm.ru - огромное количество статей, туториалов и прог
http://movsd.com - домашняя страница Стива Хатчессона (отца masm32)

   
 
 автор: cheops   (08.12.2005 в 22:26)   письмо автору
 
   для: Саня   (08.12.2005 в 14:14)
 

Поддерживаю, тоже хотел привести ссылки, но порастерял их уже...

   
 
 автор: Akira   (08.12.2005 в 22:34)   письмо автору
 
   для: cheops   (08.12.2005 в 22:26)
 

Мда, запутался я :)

   
 
 автор: Саня   (09.12.2005 в 00:48)   письмо автору
 
   для: Akira   (08.12.2005 в 22:34)
 

А что тут такого? Если знаете английский, вам прямая дорога к iczelion'у, иначе к Калашникову.
Затем пойти на wasm.ru, чтобы окунуться в мир ассемблера полностью.

За свежей версией MASM32 можно (и лучше) сходить к отцу (movsd.com).

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования