Změny

Skočit na navigaci Skočit na vyhledávání

SHLD/SHRD - instrukce dvojitého posuvu

Odebrány 2 bajty, 24. 1. 2013, 18:43
bez shrnutí editace
;Popis
: Instrukce SHLD/SHRD posouvají operand reprezentujíci číslo v dvojité přesnosti doleva nebo doprava tak, aby vzniklo číslo v jednoduché přesnosti. Registr nebo hodnota paměťového místa je posunutá v závislosti na hodnote v trětím operandu instrukce který je čítačem. Tento posuv se líši od posuvu u čísel v jednoduché přesnosti v tom, že dvojitý posuv používa registrový operand pro specifikaci bitů, které se mají posouvat, zatímco jednoduchý posuv přesouva jen nuly nebo jedničky. Registr nebo paměťové místo (reg/mem) specifikuje vstupní operand. Registr (reg) specifikuje bity, které mají být vsunuty a třetí operand (immediate/CL) obsahuje počet posuvu.
 
:Pro [[SHLD]] obsahuje registr nebo paměťový operand vyšší bity čísla v dvojité přesnosti a registr (druhý operand) obsahuje nižší bity čísla. První operand je posunut doleva, přičemž vyšší bity druhého operandu jsou vsunutý doprava (na místo nižšího řádu). Výsledek je uložen v prvním operandu.
 
:Pro [[SHRD]] obsahuje registr nebo paměťový operand nižší bity čísla ve dvojité přesnosti a registrový (druhý) operand obsahuje vyšší bity. První operand je posunut doprava a nižší bity registrového operandu jsou vsunuty doleva (na místo vyššího řádu). Výsledek je uložen v prvním operandu.

Navigační menu