<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=101325&amp;view=findpost&amp;p=2523975</guid>
        <pubDate>Thu, 04 Mar 2010 15:31:28 +0000</pubDate>
        <title>Некоторые нюансы при использовании MOV</title>
        <link>https://forum.sources.ru/index.php?showtopic=101325&amp;view=findpost&amp;p=2523975</link>
        <description><![CDATA[Akina: Ничего симпатичного - push/pop дольше двух mov]]></description>
        <author>Akina</author>
        <category>Assembler FAQ</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=101325&amp;view=findpost&amp;p=2523945</guid>
        <pubDate>Thu, 04 Mar 2010 15:13:54 +0000</pubDate>
        <title>Некоторые нюансы при использовании MOV</title>
        <link>https://forum.sources.ru/index.php?showtopic=101325&amp;view=findpost&amp;p=2523945</link>
        <description><![CDATA[B1tD1ver: А как же такой вариант, через стэк&#33;?&#33;?&#33;<br>Var db 256 dup(?)<br>A   db &#39;A&#39;,0<br>push A(или offset A);Аля masm<br>pop Var(offset Var)<br>или<br>mov al,&#39;A&#39;             ; 2 - byte<br>mov edi,Var(offset Var); 5 - byte<br>stosb                  ; 1 - byte<br>----------------------------------------<br>push ds;В полне симпатично&#33;<br>pop es<br>----------------------------------------]]></description>
        <author>B1tD1ver</author>
        <category>Assembler FAQ</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=101325&amp;view=findpost&amp;p=769308</guid>
        <pubDate>Wed, 06 Jul 2005 11:20:37 +0000</pubDate>
        <title>Некоторые нюансы при использовании MOV</title>
        <link>https://forum.sources.ru/index.php?showtopic=101325&amp;view=findpost&amp;p=769308</link>
        <description><![CDATA[miksayer:  <br>
<div class='tag-align-center'><span class='tag-size' data-value='13' style='font-size:13pt;'><span class="tag-color tag-color-named" data-value="blue" style="color: blue"><strong class='tag-b'>Некоторые нюансы при использовании команды MOV</strong></span></span></div><br>
1. С помощью MOV нельзя осуществлять пересылку из одной области памяти в другую. Для этого нужно использовать в качестве промежуточного буфера любой доступный регистр общего назначения:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">.data</div><div class="code_line">a db 5</div><div class="code_line">b db ?</div><div class="code_line">.code</div><div class="code_line">start:</div><div class="code_line">...</div><div class="code_line">mov al,a</div><div class="code_line">mov b,al</div><div class="code_line">...</div><div class="code_line">end start</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
2. Нельзя пересылать содержимое одного сегментного регистра в другой сегментный регистр. Для этого нужно использовать регистры общего назначения:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">mov ax, ds</div><div class="code_line">mov es, ax</div></ol></div></div></div></div><br>
3. Нельзя загружать в сегментный регистр непосредственное значение. Для этого требуется промежуточный объект (например, регистр общего назначения или стек).<br>
<br>
4. Нельзя использовать сегментный регистр CS как операнд назначения. Дело в том, что в архитектуре процессора IA-32 пара CS:IP содержит адрес команды, которая должна выполняться следующей. Поэтому изменение содержимого регистра CS фактически означает операцию перехода, что недопустимо.]]></description>
        <author>miksayer</author>
        <category>Assembler FAQ</category>
      </item>
	
      </channel>
      </rss>
	