<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%3AGeraltFromRivia%2F%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F_%D0%B0%D1%81%D0%BC_03</id>
		<title>Участник:GeraltFromRivia/Лекция асм 03 - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%3AGeraltFromRivia%2F%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F_%D0%B0%D1%81%D0%BC_03"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:GeraltFromRivia/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F_%D0%B0%D1%81%D0%BC_03&amp;action=history"/>
		<updated>2026-07-23T21:27:44Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:GeraltFromRivia/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F_%D0%B0%D1%81%D0%BC_03&amp;diff=27165&amp;oldid=prev</id>
		<title>GeraltFromRivia: Новая страница: «    global _start   ;метки бывают локальные и глобальные, они могут пересечься(лок временный функ...»</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:GeraltFromRivia/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F_%D0%B0%D1%81%D0%BC_03&amp;diff=27165&amp;oldid=prev"/>
				<updated>2012-06-28T12:25:05Z</updated>
		
		<summary type="html">&lt;p&gt;Новая страница: «    global _start   ;метки бывают локальные и глобальные, они могут пересечься(лок временный функ...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;    global _start   ;метки бывают локальные и глобальные, они могут пересечься(лок временный функции, видны из этого файла, но не снаружи)&lt;br /&gt;
    section  .text   ;секция кода,которая будет выполняться....есть еще секции .data(не для выполнения)&lt;br /&gt;
_start:&lt;br /&gt;
&lt;br /&gt;
рассмотрим различные конвекции вызова:&lt;br /&gt;
    pascal&lt;br /&gt;
    cdecl&lt;br /&gt;
    stdcall&lt;br /&gt;
    fastcall&lt;br /&gt;
    thiscall&lt;br /&gt;
    -надо будет почитать про них.....&lt;br /&gt;
&lt;br /&gt;
;   .rdata(.rodata) секции только для чтения(не выводить, не выполнять)&lt;br /&gt;
;   .bss невыводимые данные из нулей не храняшиеся в exe-шнике(такое сокращение)&lt;br /&gt;
&lt;br /&gt;
; ExitProcess функция&lt;br /&gt;
   | name&lt;br /&gt;
   |     mangling&lt;br /&gt;
    если нужно....то пишется call _ExitProcess@q , где q - какое-то десятичное число&lt;br /&gt;
    еще может добавиться префикс импортируемый __imp_ , после чего получится такая переменная&lt;br /&gt;
    типа указатель на функцию call [__imp__ExitProcess@4]  , это нужно для линкера&lt;br /&gt;
        например команду типа&lt;br /&gt;
        |_ExitProcess@4&lt;br /&gt;
        |jmp [__imp_ ...]&lt;br /&gt;
&lt;br /&gt;
        Функция MessageBox создает, отображает на экране и оперирует окном сообщений - это define, у него может быть два разных аргумента - или А или W...&lt;br /&gt;
&lt;br /&gt;
   давайте напишем на асемблере такую си-шную функцию:&lt;br /&gt;
    |int sub (int a, int b)&lt;br /&gt;
    |{&lt;br /&gt;
    |   return a-b;&lt;br /&gt;
    |}&lt;br /&gt;
    это быдет выглядеть так:&lt;br /&gt;
    |...                                                   &lt;br /&gt;
    |push b                                                &lt;br /&gt;
    |push a                                                &lt;br /&gt;
    |call sub&lt;br /&gt;
    ДЗ - записать программу, где ...чего то sub call&lt;br /&gt;
&lt;br /&gt;
    extern &amp;quot;C&amp;quot; int sub(int, int);    - как из плюсов вызвать функцию&lt;br /&gt;
&lt;br /&gt;
    важные регистры, сохраняющие все: ebx, ebp, esi, edi&lt;br /&gt;
    не очень важные(их могут в ЛЮБОЕ время испортиться): eax, ecx, edx&lt;/div&gt;</summary>
		<author><name>GeraltFromRivia</name></author>	</entry>

	</feed>