Homer
О себе
Кодинг под linux от Homer'a ПРОДВИНУТАЯ ПАМЯТЬ
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 02.06.2005->linuxcoding->asm->#8->koi8-r: ПРОДВИНУТАЯ ПАМЯТЬ Безвозвратно прошли те времена, когда данные могли занимать лишь 64K. Теперь даже, если транслятору передать директиву вроде .space 1000000 - он спокойно выделит миллион байт. Но, все данные, расположенные в .data хранятся и на диске, непосредственно в исполняемом файле. Поэтому для инициализируемых нулем данных (имеющих нулевое значение в начале работы программы) был придуман специальный сегмент .bss...
Кодинг под linux от Homer'a ПРЕРЫВАНИЯ - ПРИМЕР
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 28.05.2005->linuxcoding->asm->#8->koi8-r: ПРЕРЫВАНИЯ - ПРИМЕР Да. Давненько я обещал привести какой нибудь пример с прерываниями. Но пришло лето, а с ним зачетная неделя и сессия. Так, что пока рассылка будет выходить не два раза в неделю, а как получится) Ну ладно, продолжим. Итак, ставится следующая задача (как всегда с целью демонстрации прежде всего: Вывести первые 60 символов файла, печатая их постепенно (т.е. с задержкой как в кино, ну и закрутим звездочк...
Кодинг под linux от Homer'a ПРЕРЫВАНИЯ 1
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 16.05.2005->linuxcoding->asm->#7->koi8-r: ПРЕРЫВАНИЯ - 1 Итак, прерывания. Вкратце напомню, что при вызове прерывания int XX вызывается процедура, адресс которой записан в XX-том векторе прерывания. От обычного call это отличается лишь тем, что при вызове указывается не адресс самой процедуры, а, по сути, адресс ячейки с ее адрессом, кроме того, в стеке сохраняется регистр флагов и, соответственно, восстанавливается при выходе из процедуры обработки прерывания ...
Кодинг под linux от Homer'a МАКРОСЫ
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 13.05.2005->linuxcoding->asm->#6->koi8-r: МАКРОСЫ Есессно, как и везде, макросы здесь служат как для переопределения констант, так и для создания макросов-функций, которые действуют подобно функциям, получая параметры. В общем виде макрос выглядит так: .macro <имя макроса> [передаваемые параметры через запятую] <тело макроса> .endm В теле макроса может использоваться ассемблерный код, директивы, макросы (в том числе допустима рекурсия. Перед, именна...
Кодинг под linux от Homer'a ПЕРЕХОДЫ И ПРОЦЕДУРЫ В GAS
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 09.05.2005->linuxcoding->asm->#5->koi8-r: ПЕРЕХОДЫ И ПРОЦЕДУРЫ В GAS Идеология переходов, вобщем-то, особо ничем не отличается. В отношении как переходов, так и вызовов процедур AT&T синтаксис различает преходы короткие и длинные, но. Но в отношении написания программ под PC, начиная с i386 GAS позволяет работать только с 32-разрядными адрессами. И поскольку все подсегменты с исполняемым кодом будут собраны в один, то все джампы и вызовы могут быть только внутр...
Кодинг под linux от Homer'a АДРЕССАЦИЯ В GAS
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 06.05.2005->linuxcoding->asm->#4->koi8-r: АДРЕССАЦИЯ В GAS В общем случае адрессация в синтаксисе AT&T выглядит так: <сегмент>:<смещение>( <базовый регистр>, <индексный регистр>, <множитель>) - довольно не привычно. Почему именно так - не знаю, видимо связано как-то с особенностями других архитектур. В переводе на интеловский синтаксис это будет выглядеть как <сегмент>[ <базовый регистр> + <индексный регистр>*X<...
Кодинг под linux от Homer'a Пример решения простой задачи
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 02.05.2005->linuxcoding->asm->#3->koi8-r: ПРИМЕР РЕШЕНИЯ ПРОСТОЙ ЗАДАЧИ Рассмотрим следующую задачу: найти X=6(A-2B+C/4+10 (з.ы. конечно, можно реализовать консольный ввод и вывод, обработку ошибок, GUI'ёвый интерфейс, но делать все это в рамках данной задачи имхо глупо. да и многое придется затронуть о чем рассказано еще не было, так что все переменные будут определены еще за долго до трансляуции, а результат посмотрим в отладчике) #это уже начало кода, поэтом...
Кодинг под linux от Homer'a Основные дериктивы GAS
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 29.04.2005->linuxcoding->asm->#2->koi8-r: ОСНОВНЫЕ ДИРЕКТИВЫ GAS На этот раз, собственно как и обещал, перечислил самые основыне директивы (т.е. какие вспомнил) для работы с IBM PC старше i80386. Ибо linux писалась уже под 32-разрядные камни. Возможно эти же директивы корректны по отношению к SPARC, VAX и т.д. , но я не знаю этого по понятным всем причинам. В общем, на первое время и этого хватит с головой: . Директива получения текущего адресса .ascii Директив...
Кодинг под linux от Homer'a Особенности синтаксиса AT&T
Изучаем как писать программы под Linux вместе. Пока пишу про ассемблер в AT&T синтаксисе, а там дальше как получится...
Информационный Канал Subscribe.Ru 25.04.2005->linuxcoding->asm->#1->koi8-r: ОСОБЕННОСТИ СИНТАКСИСА AT&T Вот собственно и первое письмо рассылки. Так что всем дароффа. В двух словах о всем происходящем: собственно я далеко не специалист в области кодинга под linux, я только сему учусь. Надо сказать, штука это довольно интересная и пока она будет составлять мое хобби - буду писать о том, что сам раскопал и узнал, как долго это продлится - не знаю. Начать решил с самых низов - с ассемблера. Единст...
Программирование под Linuxрассылка переезжает
Разбираемся понемногу в кодинге под Linux. Начиная от ассемблера и далее... там посмотрим в какую степь.
Информационный Канал Subscribe.Ru в связи с обстоятельствами рассылка переедет в другой каталог. Чтобы зарегится нужно перейти по такому линку: http://subscribe.ru/catalog/comp.soft.linux.linuxcoding http://subscribe.ru/ http://subscribe.ru/feedback/ Подписан адрес: Код этой рассылки: industry.soft.linuxcoding Отписаться ...
- 1
- 2