asm программа



Автор Михаил Великий задал вопрос в разделе Другие языки и технологии

Подскажите хорошую литературу по Ассамблеру, с НУЛЯ. и получил лучший ответ

Ответ от Ligh erner[гуру]
Ассемблер - это язык мнемонических обозначений для совсем низкоуровневого набора машинных команд по сути. Для каждого устройства (микропроцессора) он свой. Поэтому прежде чем вы задаете такой вопрос - уточните ассемблер для чего вам нужен. Для IBM PC камней это один язык, для RISC процессора вашего мобильного телефона другой, для процессора вашей стиральной машины или роутера или компьютера в машине или датчика с цифрами на заправке (итд) - свой.
Проще и доходчивее - начните с микрокалькуляторов, потом переходите к DOS. Забудьте слово Виста и x64 на пару лет. Разберитесь с основой.
Запускается любая программа одинаково - запускаете исполнимый файл в операционной системе. Файл на ассемблере обычно компилируется с помощью компилятора (особой программы) , чтобы превратить его в объектный файл, который затем линкуется в исполнимый exe или com (если говорить о Microsoft операционных системах) .
Видеоуроки по ассемблеру - это смешная шутка. Поржал.
Ним
Гуру
(2701)
для самых основ я читал Питера Абеля.Но что бы выучить ассемблер одной книги мало.Нужно еще учить архитектуру ЭВМ.если вы только начинает учить программирование,то лучше выбрать язык по проще.

Ответ от Игорь Гоферберг[новичек]
видео уроков по Ассемблеру неразу не встречал. Вот например хорошая ссылка на подпорку учебников по Ассемблеру .
Я тоже программирую на Ассемблере у меня WinXP sp3. Сталкнулся с проблемой запуска (компиляции) Ассемблера. Делаю так - пишу Asm код в каком-нибудь Asm редакторе (можно в блокноте написать) . Сохраняю фаил с расширением *.asm, Копирую этот фаил в директорию C:/BP/BIN/ (BP-это Borland Pascal, у меня он установлен) . Запускаю C:/BP/BIN/BP.exe жму File - DOS shell там уже все готово (т. е Прописана директория в которой уже все есть (фаил TASM.exe или MASM.exe и фаил который нужно откомпилировать - *.asm) C:/BP/BIN/>) в DOS режиме пишу C:/BP/BIN/>TASM.exe *.asm/e жмем Enter и все получаем *.exe.
Можно сделать конечно проще : Скачать TASM.exe (MASM.exe) скопировать его допустим в директорию C:/ASM/TASM.exe в этой же директории создать *.asm (или в другой (допустим С: /ASM/Program/*.asm) тогда в командной строке придется вводить C:/ASM/>TASM.exe С: /ASM/Program/*.asm/c (/c создание *.com файла если не ошибаюсь) ) заходим Пуск - Все программы - Стандартные - Командная строка. В DOS режиме переходим в каталог C:/ASM/> (переход осуществляется командой cd) прописываем C:/ASM/>TASM.exe *.asm/e.
Насчет работы под ОС Vista не знаю будет или нет работать. Там наверняка можно работать с такими версиями Assemblera - FASM, RadASM хотя код для них немного модифицированный.
Будут проблемы пиши.

Ответ от Arn[гуру]
ИМХО для начала одна из лучших. Но как правильно заметили выше, программирование на ассм это прежде всего знание архитектуры камня под который пишешь, а она даже у i286 отнюдь не самая простая. Про защищенный режим скромно умолчу, он у интелов вобще нечто шедеврально-кривое. А под винду на ассме писать больших идей в общем то нету, если только узкие вычислительные участки кода и линковать их из отдельных объектников, а просто дергать вызовы API ассме больших идей нету, толку в общем мало, а проблем много. В унихе по сути та же песня.

Ответ от Костеич[эксперт]
Калашников Олег Александрович. Ассемблер? Это просто!
А запуск под Вистой64 - это момент, который учитывается при самом написании исходного кода и линковке.

Ответ от Евгений[гуру]
Не ассамблер, а ассемблер.
А книга - "Ассемблер на примерах. Бызовый курс" автор - Рудольф Марек.
быстро гуглится.
Очень хорошее начало будет.
Рассматриваются системы счисления, x86-ассемблер (с нуля) ,
программирование под DOS, Windows, Linux.
пожалуй, лучшая книга для новичков, которую я только
видел.

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Подскажите хорошую литературу по Ассамблеру, с НУЛЯ.
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*