![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Вставить ник | Быстрая цитата | Сообщение
#1
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 245 Регистрация: 18.06.2005 Пользователь №: 8526 ![]() |
Посоветуйте с чего начать
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#2
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
C похода в магазин и покупки книги в бумаге с последующим её чтением.
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#3
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 182 Регистрация: 5.01.2006 Пользователь №: 11345 ![]() |
Ассемблеров много разных, тебе чего конкретно надо-то?
Начинать надо с изучения->понимания архитектуры ядра, под которое ассемблер. |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#4
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 967 Регистрация: 17.08.2004 Пользователь №: 4400 ![]() |
Ассемблеров много разных, тебе чего конкретно надо-то? Начинать надо с изучения->понимания архитектуры ядра, под которое ассемблер. Немного уточню - понимания (изучения) выбранной архитектуры (без ядра). Под архитектурой я понимаю: - систему команд - систему адресации - систему построения внешней периферии А начать изучение лучше с дедушки Кнута - "Искусство программирования", том 1 - ]]>http://ru.wikipedia.org/wiki/Искусство_программирования]]> . Все очень обстоятельно, академично и очень практично. Во первых, все примеры приведены на ассемблере абстактной архитектуры MIX - ]]>http://ru.wikipedia.org/wiki/MIX]]> . Эмуляторов этой архитектуры полно в интернете. Во вторых, это классика жанра и читать любой из трех томов можно с любого места. В третьих, попытаться решить задачки, особенно с индексом 45 - очень забавно и поучительно. В четвертых, получить работу у самого Билла Гейтса, если осилишь все 3 тома. В пятых, получить Нобелевскую премию за решенную задачку с индексом 45 (а может быть и не одну). Ну и в шестых, трех-томник действительно читается очень легко на одном дыхании. Сообщение отредактировано leah - 16.04.2009 - 20:10 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#5
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 182 Регистрация: 5.01.2006 Пользователь №: 11345 ![]() |
Немного уточню - понимания (изучения) выбранной архитектуры (без ядра). Под архитектурой я понимаю: - систему команд - систему адресации - систему построения внешней периферии Я под архитектурой ядра понимаю то же самое, только не в теории, а в конкретике, для быстрого перехода к практическому применению, в процессе которого придет более глубокое понимание. Все зависит от целей и задач: получить общие знания и забыть, или наоборот - побыстрее перейти к практике. Автор же нам не говорит, чего он хочет ![]() |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#6
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 245 Регистрация: 18.06.2005 Пользователь №: 8526 ![]() |
Имелся ввиду асс для процессоров интел. Пока Зубкова изучать начал, он вроде по этой архитектуре пишет
C похода в магазин и покупки книги в бумаге с последующим её чтением. Острая шутка, только разделом ошиблась/ся Сообщение отредактировано swansong - 28.04.2009 - 17:07 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#7
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
Это не шутка. Книга в бумаге учит быстрее, качественнее и глубже, чем та же книга в виде файла. Уж поверь моему преподавательскому опыту.
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#8
|
|
![]() * Не Злой * ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 912 Регистрация: 6.12.2005 Пользователь №: 10925 ![]() |
Это не шутка. Книга в бумаге учит быстрее, качественнее и глубже, чем та же книга в виде файла. Уж поверь моему преподавательскому опыту. Как мне показывает личный опыт и опыт работы со студентами - дипломниками ничто не учит ассемблеру так быстро и эффективно, как практическое программирование. Ассемблер - язык весьма сложный на начальном этапе освоения. Лишь спустя примерно год практического программирования на разных процессорных ядрах понимаешь всю его прелесть и преимущества, а также приобретаешь навыки эффективного использования. Быстрый старт на ассемблере имхо не возможен ввиду требований к особому типу мышления программиста. Этот тип мышления прививается самим же языком в процессе программирования на нем же :-) Самое главное - полностью освоить систему команд конкертного ядра, почитать хорошие исходники граммотного программиста не гнушашегося на коменты и нормальные определения констант, меток в программе. Это путь к наиболее быстрому освоению имхо. Сообщение отредактировано gormih - 28.04.2009 - 21:32 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#9
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 967 Регистрация: 17.08.2004 Пользователь №: 4400 ![]() |
Добавлю пару капель. Мало изучить ассемблер под конкретную архитектуру. Нужно еще и изучить API той операционной системы, под которую писать будешь, ведь никому не интересно перебросить пару байт, хочется их и на экран вывести и по сети послать.
И еще одна капелька - интел выпускает и StrongARM (XScale) и Itanium... Я бы сначала сформулировал цель изучения ассемблера, а потом бы подобрал себе архитектуру... Проще всего изучать ассемблер какой нибудь 16-и разрядной однокристалки с системой CISC-команд (вплоть до Intel 80236), а уж потом попробовать разобраться с RISC-архитектурой... |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#10
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 245 Регистрация: 18.06.2005 Пользователь №: 8526 ![]() |
Добавлю пару капель. Мало изучить ассемблер под конкретную архитектуру. Нужно еще и изучить API той операционной системы, под которую писать будешь, ведь никому не интересно перебросить пару байт, хочется их и на экран вывести и по сети послать. И еще одна капелька - интел выпускает и StrongARM (XScale) и Itanium... Я бы сначала сформулировал цель изучения ассемблера, а потом бы подобрал себе архитектуру... Проще всего изучать ассемблер какой нибудь 16-и разрядной однокристалки с системой CISC-команд (вплоть до Intel 80236), а уж потом попробовать разобраться с RISC-архитектурой... ЦЕль -написание приложений для работы с rs-232 и USB. Вот в этом направлении и сформировна цель Сообщение отредактировано swansong - 29.04.2009 - 12:16 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#11
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 967 Регистрация: 17.08.2004 Пользователь №: 4400 ![]() |
ЦЕль -написание приложений для работы с rs-232 и USB. Вот в этом направлении и сформировна цель Я бы это на ассемблере ни за что писать не стал. Даже драйвер для порта USB или RS-232, не то что приложение! 1) Приложение, в отличии от драйвера, обычно имеет достаточно развесистую архитектуру. Соответственно будет "борьба" с системными вызовами по каждому чиху твоего приложения, особенно под виндовс или linux. 2) Что касается программирования контроллера (порта) USB, от поддержки железа (драйвер) и до реализации приложения - то здесь могу только посочувствовать и надеюсь, что не будеите реализовывать на АССЕМБЛЕРЕ весь стек протоколов USB, а не только Endpoint 0. И еще больше надеюсь, что не нужно реализовывать USB device 3) ну, просто переслать несколько байт в режиме пулинга по порту RS-232 на ассемблере просто, а вот поддержать правильную раюботу прерываний совместно с операционной системой и нормально прописать сам драйвер в системе - это достаточно сложно для начинающего... Я бы все же начал с простого - загрузил бы DOS, взял бы TurboAccembler и попробовал поработать с параллельным портом и осцилографом (или светодиодной линейкой) - там всего 3 регистра и сразу видно результат. PS. А дедушку Кнута настоятельно рекомендую, особенно прочтение первой главы и описание архитектуры и ассемблера MIX - это самое простое что мне когда либо попадалось. |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#12
|
|
![]() * Не Злой * ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 912 Регистрация: 6.12.2005 Пользователь №: 10925 ![]() |
ЦЕль -написание приложений для работы с rs-232 и USB. Вот в этом направлении и сформировна цель С такой целью можно сразу закопать идею изучать что либо. Так как цель весьма туманна и не сформулирована конкретно. Ваша задача похожа на "научится разом водить все виды транспорта на планете" :-) |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 1.07.2025 - 08:52 |