LINUX.ORG.RU

Ассемблер в Linux для программистов C

 , ,


0

0
Дмитрий Грибенко опубликовал замечательную книгу по синтаксису AT&T.

Эта книга — для людей, которые уже хотя бы немного разбираются в том, как работает железо. Многое ещё не написано (например, машинная арифметика — чистая теория, операции с числами с плавающей запятой на x86 и многое другое). Низкоуровневая работа с железом не освещена вообще, так как ставка сделана на user-mode, а не на kernel-mode.

Для чтения этой книги никаких знаний о Linux не требуется (кроме, разумеется, «как создать текстовый файл» и «как запустить программу в консоли»).

>>> Книга

★★

Проверено: UVV ()
Сколько было уже новостей по этой теме, а внятно объяснить, чем же плох синтаксис TASM, так никто и не объяснил.
anonymous
()
баян, на wasm.ru уже неделю как висит
anonymous
()
> Для чтения этой книги никаких знаний о Linux не требуется (кроме, разумеется, «как создать текстовый файл» и «как запустить программу в консоли»).

Про умение читать забыли 8-)

anonymous
()
Ответ на: комментарий от fdn
> Asm мёртв, Линкус тоже!!!

быдло детектед

anonymous
()
Ответ на: комментарий от Bohtvaroh
> Дык его ж нету для Linux? Есть nasm и этот, AT&T.

_синтаксис_, а не программа. nasm как раз TASM-подобный.

anonymous
()
Спасибо, почитаю на досуге.
GFORGX ★★★
()
Ответ на: комментарий от naive
>Хорошая дока: должна быть у каждого линуксоида, _не обязательно программиста._

:) Омоймозг. Бедные домохозяйки на линуксе..

stave ★★★★★
()
Хорошая новость. Спасибо. Почитаю на досуге.
anonymous
()
А я думал, что в asm можно вызывать лишь функции DOS. Вот это да!
CtrlAltBs
()
Ответ на: комментарий от LamerOk
Кодогенерацию под разные платформы но в едином синтаксисе ассемблера сделать сильно проще чем если у каждой платформы ещё и синтаксис свой.
anonymous
()
Ответ на: комментарий от anonymous
> NASM - MASM(aka Intel)-подобный. А у TASM есть свой синтаксис, несколько отличающийся от Intel

MASM = Microsoft Macro Assembler

Spinal
()
Ответ на: комментарий от Bohtvaroh
> Java рулит - да? :D

Ни в коем разе.

От асма Томпсон с Ритчи избавились в 70ом, заменив на кошерный C. Для кроссплатформенности и удобства.

Оставьте асм компилятору и тем кто знает что делает! Нельзя сеять дезу в умы людей, что написанное на асме более чем в 9000 раз быстрее написанного на других языках!

anonymous
()
Ответ на: комментарий от anonymous
А вот это интересно. Раньше, до расцвета Интернета, ведь это был самый популярный холивар - "C vs ASM". По крайне мере так пишут в книжках, но не представлю как это было - толи почта глубинная, то ли посиделки в пабах, или фрикеры перезванивались.

Так или иначе. Даешь ностальгический холивар в память программистам прошлого!

CtrlAltBs
()
нет любимой аббревиатуры РОН (регистры общего назначения), вместо нее "пользовательские регистры"
anonymous
()
Все забыли, что есть еще FASM с интеловским синтаксисом, под Линукс и FreeBSD (и еще MenuetOS)
anonymous
()
>Ассемблер в Linux для программистов C

Спасибо, почитаем.

anonymous
()
Ответ на: комментарий от anonymous
>Все забыли, что есть еще FASM с интеловским синтаксисом, под Линукс и FreeBSD (и еще MenuetOS)

Есть еще nasm и yasm.

anonymous
()
Синтаксис AT&T ужасен... Традиционный синтаксис TASM получше конечно, но удобнее всего писать на асме под макро-ассемблер любой всеми компании:) Там удобство написания и читаемость кода практически приближается к языку Си. Макроподстановки, invoke'и. Никому бы не было плохо, если бы нечто похожее появилось и под линукс, естественно не под флагом микрософт)
anonymous
()
Ответ на: комментарий от anonymous
> Синтаксис AT&T ужасен...

Чем? Тем, что непривычен некоторым, кто начинал учиться с писюков?

anonymous
()
новость из серии -- пи***дим ссылки с хабра ?
time2die
()
Ответ на: комментарий от anonymous
>Традиционный синтаксис TASM получше конечно, но удобнее всего писать на асме под макро-ассемблер любой всеми компании:) Там удобство написания и читаемость кода практически приближается к языку Си. Макроподстановки, invoke'и. Никому бы не было плохо, если бы нечто похожее появилось и под линукс, естественно не под флагом микрософт)

http://flatassembler.net - макровозможности такие, что все остальные нервно курят в стороне

anonymous
()
даёш холивар на тему

mov eax,ebx vs movl %ebx, %eax ;)

sS ★★★★★
()
В английской википедии пишут: One source of criticism is the fact that on the x86 and x86-64 architecture it uses the AT&T assembler syntax, rather than the Intel syntax used in many other assemblers; however, since version 2.10, support for the Intel syntax via the .intel_syntax directive has been added. Это значит для всех архитектур можно использовать Intel syntax?
anonymous
()
Ответ на: комментарий от anonymous
>Это значит для всех архитектур можно использовать Intel syntax?

можно, только ошибку выдаст.

anonymous
()
Ответ на: комментарий от anonymous
>Чем? Тем, что непривычен некоторым, кто начинал учиться с писюков?

А что, at&t синтаксис не для писюков?

anonymous
()
Ответ на: комментарий от anonymous
>http://flatassembler.net - макровозможности такие, что все остальные нервно курят в стороне

Такое ощущение, что проект делается одним человеком и будущее у него весьма туманное. Хотя, если будет поддерживаться, желаю всяческих ему успехов:)

anonymous
()
Ответ на: комментарий от anonymous
>Для писюков, но для более длинных.

На асме с синтаксисом at&t можно спокойно писать под интеловские x86, и наоборот, для более "длинных" и могучих архитектур вроде Alpha,MIPS или PowerPC вполне без at&t синтаксиса обходились

anonymous
()
Ответ на: комментарий от anonymous
> можно, только ошибку выдаст.

Я имею ввиду GNU assembler... Мне приходится писать для отличных от x86 архитектур и хотел бы попробовать ассемблер на них. Если на всех других архитектурах используется Intel синтаксис, то наверное разумно было бы привыкнуть к самому распространенному, тем более раз GNU asm это позволяет в том числе для x86... Или не так? :)

anonymous
()
Ответ на: комментарий от anonymous
А у них есть нативный синтаксис?
anonymous
()
Большое спасибо автору, полезное дело. Мне б это на втором курсе :)

Может, летом смогу помочь как раз с теорией арифметики :) Главное, не забыть

DarkFlame ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.