Ассе́мблер (от англ. assembler — сборщик) — транслятор программы из текста на языке ассемблера, в программу на машинном языке.
Как и сам язык, ассемблеры, как правило, специфичны для конкретной архитектуры, операционной системы и варианта синтаксиса языка, поскольку работают с мнемониками машинных инструкций определённого процессора. Вместе с тем, ассемблеры могут быть мультиплатформенными или вовсе универсальными, то есть работать на разных платформах и операционных системах. Среди ассемблеров можно также выделить группу кросс-ассемблеров, имеющих возможность собирать машинный код и исполняемые модули (файлы) для архитектур, отличных от архитектуры и/или операционной системы, в которых работает сам ассемблер (например, трансляция программы для микроконтроллера ассемблером, работающим на компьютере).
В Викисловаре есть статья «макроассемблер»
Многие современные ассемблеры являются макроассемблерами (от греч. μάκρος — большой, обширный), то есть макропроцессорами на базе языка ассемблера[1]. Кроме макросов, ассемблеры при трансляции выполняют другие директивы, набор которых зависит не от аппаратной платформы, для которой транслируется программа, а от самого используемого транслятора.
Ассемблирование может быть не первым и не последним этапом на пути получения исполнимого модуля программы. Так, многие компиляторы с языков программирования высокого уровня выдают результат в виде программы на языке ассемблера, которую в дальнейшем обрабатывает ассемблер. В свою очередь, результатом ассемблирования может быть не исполняемый, а объектный модуль, содержащий разрозненные блоки машинного кода и данных программы, из которого (или из нескольких объектных модулей) в дальнейшем с редактора связей (линкера) может быть получен исполняемый файл.
В отличие от компиляции программ на языках высокого уровня, ассемблирование является более или менее однозначным и обратимым процессом, поскольку в языке ассемблера каждой мнемонике соответствует одна машинная инструкция, в то время как в высокоуровневых языках каждое выражение может преобразовываться в большое число различных инструкций (операция, обратная ассемблированию, называется дизассемблированием). Трансляцию ассемблерных программ иногда также называют компиляцией.
1.В видео памяти, то есть в оперативной памяти видеокарты – хранятся данные, которые выводятся на экран. Это могут быть как готовые кадры для отображения на экран, так и какие-то их части (полигоны, кусочки картинок и т.п.).
2.Двухцветный - 2 в первой степени следовательно 1 бит
Четырехцветный - 2 во второй степени следовательно два бита
Восьмицветный - 2 в 3 степени следовательно 3 бита
3. Красный, синий и зеленый – это цветовая гамма RGB, которая наиболее популярна на данный момент во многих графических редакторах и других программах. При смешивании:
Красного (Red) и синего (Blue) цвета получается пурпурный (Magenta)
Красного и зеленого (G) – желтый (Yellow)
Синего и зеленого - циановый (Cyan – “цвет морской волны”, ядовито-синий).
Пурпурный, желтый и циановый – основные компоненты цветовой модели CMYK, где K – черный.
4. 2 во второй степени следовательно - четыре цвета
5. 256 это 2 в 8 следовательно у нас есть 8 бит то есть 8 ячеек, нам нужно три цвета( зеленый,синий и красный) остальные можно получить смешивая эти цвета.
Используя цветовую модель RGB в 8-бит цвета кодируются следующим образом :
Первые 2 бита – синий, следующие 3 бита – зеленый и последние 3 бита – красный.
Под синий используются 2 бита, так как считается, что люди менее чувствительны к оттенкам синего.
6.16 это 2 в 4 = 4 бита на пиксель
1 байт =8 бит
1024 байт =1 кбайт
640*480*4=1228800 бит=1200 байт =1 кбайт