Ассемблер библиотека
830 subscribers
28 photos
62 files
91 links
Обсуждение: @ChatAssembler
Канал посвященный Крису Касперскому: @KasperskyKris
Обратная связь: biblioasm(at)proton(dot)me
Download Telegram
Сообщение от А. В. Столярова (автора книг «Программирование. Введение в профессию»):
В феврале врачами был обнаружен рак, на текущее лечение требуются средства.

Прямой донат не требуется, только косвенный через поддержание проектов:
- третье издание «Введения в профессию» [журнал пожертвований];
- перевод «Введения в профессию» на английский язык [журнал пожертвований];
- видеоблог об информационном насилии [журнал пожертвований];
- дальнейшая разработка Thalassa CMS [журнал пожертвований];
- децентрализованная наложенная сеть FEDAnet [журнал пожертвований].
Ссылка на проекты: http://www.stolyarov.info/donate.html
Ссылка на обращение к публике: http://www.stolyarov.info/node/429
Ютуб: https://youtu.be/L0Cxx30QIfc
👍3
Дополнительная информация от канала:

Все произведения А. В. Столярова можно скачать бесплатно на сайте автора — http://www.stolyarov.info/books

Автор создаёт книги и другие проекты на средства, которые жертвуют его читатели. После завершения работы над книгой/проектом они становится доступным для всех желающих совершенно бесплатно.
👍3
Архитектура ЭВМ и язык ассемблера (Конспект лекций)

Автор: Падарян В.А.
Год издания: 2024
Описание: Конспект лекций имеет своей целью изучение базовых принципов устройства современных ЭВМ, анализ качественных и количественных характеристик различных компонент ЭВМ, анализ влияния этих характеристик на работу прикладных программ. Помимо того, предполагается практическое освоение языка ассемблера архитектуры IA-32, изучение особенностей этой процессорной архитектуры, изучение взаимосвязей между архитектурой набора команд, механизмами реализации языка Си и системой программирования.
👍16
Курс «Архитектура ЭВМ и язык ассемблера» для студентов 1 курса факультета ВМК МГУ.

Преподаватель: В.А. Падарян, ВМК МГУ.

Курс состоит из 24 лекций, охватывающих ключевые аспекты архитектуры вычислительных машин и язык ассемблера.

Описание курса: https://teach-in.ru/course/architecture-and-assembler/about
Материалы: https://teach-in.ru/course/architecture-and-assembler/material
Лекции: https://teach-in.ru/course/architecture-and-assembler/lecture
1👍14🤔3
Photoshop, Pascal и Ассемблер: История Революционного Инструмента

Photoshop был разработан командой Томаса и Джона Ноллов и с тех пор кардинально изменил подход к редактированию изображений. Программа была разработана на языке Pascal и ассемблере, что обеспечивало высокую производительность и оптимизацию. По количеству строк кода около 75% написано на Pascal, примерно 15% на ассемблере, а остальная часть — это данные различных типов.

Первая версия включала базовые инструменты, такие как обрезка, преобразование и работа с цветом, что дало возможность многим пользователям необычайно легко редактировать фотографии и графику. Разработка быстро завоевала популярность, особенно среди графических дизайнеров и фотографов, положив начало целой индустрии.

История photoshop и исходный код версии 1.0: https://computerhistory.org/blog/adobe-photoshop-source-code/
Исходный код на GitHub: https://github.com/amix/photoshop?tab=readme-ov-file
👍23
Ассемблеры и загрузчики

Автор: Баррон Д.
Серия: Математическое обеспечение ЭВМ
Год издания: 1974
Описание: Ассемблеры и загрузчики - важное звено в системе математического обеспечения вычислительных машин, хотя в научной литературе им уделялось мало внимания по сравнению с более сложными и эффектными компиляторами с языков программирования высокого уровня.Ассемблеры - наиболее эффективное, а подчас и единственное средство автоматизации программирования в тех случаях, для которых еще нет проблемно-ориентированных языков и компиляторов. Удобство применения ассемблеров резко повысилось с внедрением макропроцессоров.Книга представляет интерес и как учебное пособие по ассемблерам, и как простое введение в автоматизацию программирования.
1👍7🤔1
Рекурсивные методы в программировании

Автор: Баррон Д.
Серия: Математическое обеспечение ЭВМ
Год издания: 1974
Описание: В книге излагаются рекурсивные методы программирования и демонстрируются возможности рекурсивного описания алгоритмов. Эти методы получают все более широкое распространение в практике программирования, и возможность их применения учитывается при разработке языков программирования и вычислительных машин. В книге показаны перспективы использования рекурсивных методов. Их удобство и эффективность демонстрируются на различных примерах.
👍4
Введение в языки программирования

Автор: Баррон Д.
Серия: Математическое обеспечение ЭВМ
Год издания: 1980
Описание: Цель книги Д. Баррона, хорошо знакомого читателям по двум его книгам из серии Математическое обеспечение ЭВМ, - помочь разобраться в существующем многообразии языков программирования. Общие принципы их построения иллюстрируются примерами из таких известных языков, как АЛГОЛ-60, ФОРТРАН, АЛГОЛ-68, ПЛ/1, АПЛ. В доступной и интересной форме, но вместе с тем достаточно аккуратно, рассматриваются основные понятия языков программирования, значительное внимание уделяется вводу-выводу и общей структуре программ.
👍4🤔2
Канал Tempesta Torres — один из самых актуальных источников по ассемблеру и реверс-инжинирингу на русскоязычном YouTube.

Если вы только начинаете свой путь в мире ассемблера, не пропустите видео «Ассемблер - Начало». Оно обеспечит отличную базу для дальнейшего изучения.

Еще одно увлекательное видео — «КАК НАПИСАТЬ KEYGEN». Здесь вы узнаете, как работают генераторы ключей и какие техники применяются в этом процессе. Также стоит посмотреть видео «ASSEMBLER ПРОТИВ PYTHON», где происходит интересное сопоставление двух языков программирования.

Тем, кто интересуется реверс-инжинирингом, будет полезно узнать, как создать чит для Pong Game с использованием GHIDRA и как написать CRACKME на ассемблере.

Ссылка на youtube канал: https://www.youtube.com/@tempestatorres5243/videos
Ссылка на boosty: https://boosty.to/tempesta/media/all
👍13
Знание ассемблера — это лишь часть, и одного этого навыка недостаточно, чтобы устроиться на работу.
Отличным продолжением станет изучение языка C, который лежит в основе множества системных приложений и позволяет глубже понять принципы низкоуровневого программирования. Работа операционных систем, например, Linux, откроет двери к пониманию процессов, потоков и управления памятью. Также важно понимать, как работают компиляторы и интерпретаторы — это поможет осознать, как код высокого уровня превращается в низкоуровневый, что бывает критично для оптимизации.

Так же практика на платформах для решения задач, таких как leetcode.com, и работа с аппаратными проектами, например, Raspberry Pi или Arduino, дадут вам опыт работы с низкоуровневыми библиотеками и закрепят полученные знания.

Roadmap https://github.com/gurugio/lowlevelprogramming-university/blob/master/README_ru.md от gurugio поделится опытом и покажет путь к становлению программистом низкого уровня.
1👍10
https://www.youtube.com/watch?v=woeVYeC7ktc

Доклад: Что могут C и C++, и когда нужен ассемблер

Описание: C и C++ известны скоростью сгенерированного кода. Однако, код генерируется конкретным компилятором под конкретную ОС на конкретное железо. Расширения компиляторов позволяют генерировать еще более быстрый код, чем для "чистых" C и C++. Микропроцессоры тоже предоставляют свои расширения, которые недоступны даже для расширений компилятора и для использования которых нужен ассемблер.

* Как x86-64 исполняет код и как работает с памятью.
* Некоторые полезные расширения и оптимизации GCC и Clang для C и C++.
* Когда ассемблер x86-64 не только быстрее, но и проще C.
* Скользкие места программирования для многоядерных архитектур
* Защита от Spectre в компиляторах.
* Profiler guided optimization (PGO) и когда она бесполезна.
👍5
Алгоритмические трюки для программистов (Hacker's Delight)

Автор: Генри С. Уоррен
Год издания: 2014
Описание: Книга "Алгоритмические трюки для программистов" (Hacker's Delight) поможет как опытным, так и начинающим программистам улучшить свои навыки. В новом издании представлены множество практических и теоретических упражнений. Автор, ветеран IBM Генри Уоррен, делится проверенными приемами, собранными за десятилетия работы в программировании. Книга возвращает слову "хакер" его истинное значение — талантливого программиста, способного создавать эффективный и элегантный код. Вы найдете множество техник для работы с битами и байтами, а также вычисления целочисленных функций.

Описание из Wiki: https://en.wikipedia.org/wiki/Hacker%27s_Delight

В архиве Code_Hackers_Delight.zip содержатся примеры из книги.
👍7
Обновление от Андрея Столярова, автора книг «Программирование. Введение в профессию»:

https://youtu.be/lhFnE3LHgF0

С радостью сообщаем, что благодаря вашим донатам удалось покрыть часть расходов на лечение Андрея. Первые результаты химиотерапии обнадеживают: опухоль уменьшается, однако впереди у него серьезная операция по ее удалению, которая состоится в ближайшие две недели.
Несмотря на сложности, Андрей активно работает над своими проектами. За последние три месяца он достиг значительных результатов:
- Опубликованы обновленные издания второго и третьего томов «Введения в профессию».
- Выпущена новая пачка видео на его основном канале на YouTube.
- Представлена новая версия децентрализованной сети для общения FEDAnet.

Кроме того, Андрей продолжает работу над рядом интересных проектов, включая третье издание «Введения в профессию», перевод этого произведения на английский язык, видеоблог об информационном насилии, дальнейшую разработку Thalassa CMS и децентрализованную сеть FEDAnet. Полный список проектов: http://www.stolyarov.info/donate.html

Давайте поддержим его на этом сложном этапе и пожелаем здоровья и сил для дальнейших свершений!

Следите за новостями на его канале: https://youtube.com/@andreystolyarov.
1👍15🤔1
Компилятор домашнего приготовления

Автор: Виталий Белик
Издание: Статьи из журнала "ПРОграммист"
Год издания: 2010-2011
Описание: Так-с… С чего бы начать? Пожалуй, начну с того, откуда мне пришла в голову идея разработать собственный компилятор. Однажды мне на глаза попалась книга, где описывались примеры проектирования в AutoCAD на встроенном в него языке AutoLISP. Я захотел с ними разобраться, но прежде меня заинтересовал сам ЛИСП. «Неплохо-бы поближе познакомится с ним», – подумал я и начал доставать литературу и среду разработки. С литературой все оказалось просто – по ЛИСПу ее море в Интернете. Достаточно зайти на портал. Дело оставалось за малым – найти хорошую среду программирования, и вот тут-то начались трудности. Компиляторов под ЛИСП тоже немало, но все они мне оказались малопонятны. Ни один пример из Вики, по разным причинам, не отработал нормально в скачанных мною компиляторах. Собственно, серьезно я с ними не разбирался, но, увы, во многих банально не нашел как скомпилировать EXE файл. Самое интересное, что компиляторы эти были собраны разными людьми в практически домашних условиях…
👍4🤔4