<?xml version="1.0" encoding="UTF-8" ?>
<!-- RSS generated by PHPBoost on Tue, 21 Apr 2026 23:03:19 +0200 -->

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Wiki MSX Village]]></title>
		<atom:link href="https://msxvillage.fr/syndication/rss/wiki/101" rel="self" type="application/rss+xml"/>
		<link>https://msxvillage.fr</link>
		<description><![CDATA[Derniers articles de la catégorie Les instructions du Z80]]></description>
		<copyright>(C) 2005-2026 PHPBoost</copyright>
		<language>fr</language>
		<generator>PHPBoost</generator>
		
		
		<item>
			<title><![CDATA[XOR op]]></title>
			<link>https://msxvillage.fr/wiki/xor-op</link>
			<guid>https://msxvillage.fr/wiki/xor-op</guid>
			<description><![CDATA[<strong>Format :</strong> XOR opérande<br />
<br />
<br />
<strong>Effet :</strong> A = A ⊕ opérande<br />
   <br />
         En binaire :     0 ⊕ 0 = 0<br />
                               1 ⊕ 0 = 1<br />
                               0 ⊕ 1 = 1<br />
                               1 ⊕ 1 = 0<br />
<br />
Cette fonction, OU exclusif, est souvent utilisée pour inverser des bits du registre A en mettant les mêmes bits de l'opérande à 1.<br />
<br />
<br />
<strong>Opérande possible :</strong> Octet, A, B, C, D, E, H , L, (HL), (IX+d) ou (lY+d)<br />
<br />
<br />
<strong>Etat des indicateurs du registre F après exécution :</strong><br />
<br />
S est mis à 1 si le résultat est négative<br />
Z est mis à 1 si le résultat est zéro<br />
H est mis à 0<br />
P est mis à 1 si résultat est un nombre pair<br />
N est mis à 0<br />
C est mis à 0<br />
<br />
<br />
<strong>Temps d'exécution </strong>:<br />
<br />
<table class="formatter-table" style="text-align: center">
    <tr class="formatter-table-row">
        <td class="formatter-table-col">Instruction</td>
        <td class="formatter-table-col">M Cycles</td>
        <td class="formatter-table-col">T States</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">XOR registre</td>
        <td class="formatter-table-col">1</td>
        <td class="formatter-table-col">4</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">XOR octet</td>
        <td class="formatter-table-col">2</td>
        <td class="formatter-table-col">7 (4, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">XOR (HL)</td>
        <td class="formatter-table-col">2</td>
        <td class="formatter-table-col">7 (4, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">XOR (IX+d)</td>
        <td class="formatter-table-col">5</td>
        <td class="formatter-table-col">19 (4, 4, 3, 5, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">XOR (lY+d)</td>
        <td class="formatter-table-col">5</td>
        <td class="formatter-table-col">19 (4, 4, 3, 5, 3)</td>
    </tr>
</table>]]></description>
			<pubDate>Thu, 04 Feb 2016 11:15:08 +0100</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[OR op]]></title>
			<link>https://msxvillage.fr/wiki/or-op</link>
			<guid>https://msxvillage.fr/wiki/or-op</guid>
			<description><![CDATA[<strong>Format :</strong> OR opérande<br />
<br />
<br />
<strong>Effet :</strong> A = A + opérande<br />
   <br />
         En binaire :     0 + 0 = 0<br />
                               1 + 0 = 1<br />
                               0 + 1 = 1<br />
                               1 + 1 = 1<br />
<br />
Cette fonction, OU, est souvent utilisée pour mettre des bits du registre A à 1.<br />
<br />
<br />
<strong>Opérande possible :</strong> Octet, A, B, C, D, E, H , L, (HL), (IX+d) ou (lY+d)<br />
<br />
<br />
<strong>Etat des indicateurs du registre F après exécution :</strong><br />
<br />
S est mis à 1 si le résultat est négative<br />
Z est mis à 1 si le résultat est zéro<br />
H est mis à 0<br />
P est mis à 1 si résultat est un nombre pair<br />
N est mis à 0<br />
C est mis à 0<br />
<br />
<br />
<strong>Temps d'exécution </strong>:<br />
<br />
<table class="formatter-table" style="text-align: center">
    <tr class="formatter-table-row">
        <td class="formatter-table-col">Instruction</td>
        <td class="formatter-table-col">M Cycles</td>
        <td class="formatter-table-col">T States</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">OR registre</td>
        <td class="formatter-table-col">1</td>
        <td class="formatter-table-col">4</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">OR octet</td>
        <td class="formatter-table-col">2</td>
        <td class="formatter-table-col">7 (4, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">OR (HL)</td>
        <td class="formatter-table-col">2</td>
        <td class="formatter-table-col">7 (4, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">OR (IX+d)</td>
        <td class="formatter-table-col">5</td>
        <td class="formatter-table-col">19 (4, 4, 3, 5, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">OR (lY+d)</td>
        <td class="formatter-table-col">5</td>
        <td class="formatter-table-col">19 (4, 4, 3, 5, 3)</td>
    </tr>
</table>]]></description>
			<pubDate>Thu, 04 Feb 2016 11:14:38 +0100</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[AND op]]></title>
			<link>https://msxvillage.fr/wiki/and-op</link>
			<guid>https://msxvillage.fr/wiki/and-op</guid>
			<description><![CDATA[<strong>Format :</strong> AND opérande<br />
<br />
<br />
<strong>Effet :</strong> A = A · opérande<br />
   <br />
         En binaire :     0 · 0 = 0<br />
                               1 · 0 = 0<br />
                               0 · 1 = 0<br />
                               1 · 1 = 1<br />
<br />
Cette fonction, ET, est souvent utilisée pour mettre des bits du registre A à 0.<br />
<br />
<br />
<strong>Opérande possible :</strong> Octet, A, B, C, D, E, H , L, (HL), (IX+d) ou (lY+d)<br />
<br />
<br />
<strong>Etat des indicateurs du registre F après exécution :</strong><br />
<br />
S est mis à 1 si le résultat est négative<br />
Z est mis à 1 si le résultat est zéro<br />
H est mis à 0<br />
P est mis à 1 si résultat est un nombre pair<br />
N est mis à 0<br />
C est mis à 0<br />
<br />
<br />
<strong>Temps d'exécution </strong>:<br />
<br />
<table class="formatter-table" style="text-align: center">
    <tr class="formatter-table-row">
        <td class="formatter-table-col">Instruction</td>
        <td class="formatter-table-col">M Cycles</td>
        <td class="formatter-table-col">T States</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">AND registre</td>
        <td class="formatter-table-col">1</td>
        <td class="formatter-table-col">4</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">AND octet</td>
        <td class="formatter-table-col">2</td>
        <td class="formatter-table-col">7 (4, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">AND (HL)</td>
        <td class="formatter-table-col">2</td>
        <td class="formatter-table-col">7 (4, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">AND (IX+d)</td>
        <td class="formatter-table-col">5</td>
        <td class="formatter-table-col">19 (4, 4, 3, 5, 3)</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">AND (lY+d)</td>
        <td class="formatter-table-col">5</td>
        <td class="formatter-table-col">19 (4, 4, 3, 5, 3)</td>
    </tr>
</table>]]></description>
			<pubDate>Thu, 04 Feb 2016 11:14:15 +0100</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[RETI]]></title>
			<link>https://msxvillage.fr/wiki/reti</link>
			<guid>https://msxvillage.fr/wiki/reti</guid>
			<description><![CDATA[<strong>Format :</strong> RETI<br />
<br />
<br />
<strong>Effet :</strong><br />
<br />
Cette instruction fait la même chose que RET. La seule petite différence est son code machine et son temps d'exécution. RETI a été créé afin de permettre à un dispositif d'interruption externe de détecter son exécution pendant une interruption grâce à son code présent sur le BUS de donnée afin de relancer ce dispositif. Pour que tout ce passe bien, en général, EI doit être exécuté avant ou peu après le RETI.<br />
<br />
Ce genre de dispositif n'existe pas sur MSX. Il est rarement utilisé ailleurs.<br />
<br />
<br />
<strong>Opérande possible :</strong><br />
<br />
<br />
<strong>Etat des indicateurs du registre F après exécution :</strong><br />
<br />
S reste inchangé<br />
Z reste inchangé<br />
H reste inchangé<br />
P reste inchangé<br />
N reste inchangé<br />
C reste inchangé<br />
<br />
<br />
<strong>Temps d'exécution </strong>:<br />
<br />
<table class="formatter-table" style="text-align: center">
    <tr class="formatter-table-row">
        <td class="formatter-table-col">Instruction</td>
        <td class="formatter-table-col">M Cycles</td>
        <td class="formatter-table-col">T States</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">RETI</td>
        <td class="formatter-table-col">4</td>
        <td class="formatter-table-col">14 (4, 4, 3, 3)</td>
    </tr>
</table>]]></description>
			<pubDate>Fri, 15 Aug 2014 08:47:05 +0200</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[EI]]></title>
			<link>https://msxvillage.fr/wiki/ei</link>
			<guid>https://msxvillage.fr/wiki/ei</guid>
			<description><![CDATA[<strong>Format :</strong> EI<br />
<br />
<br />
<strong>Effet :</strong><br />
<br />
Cette instruction rétablie les interruptions « masquables ». En pratique, les interruptions ne sont pas rétablies juste après l'exécution de EI mais après l'instruction suivante.<br />
<br />
<br />
<strong>Opérande possible :</strong><br />
<br />
<br />
<strong>Etat des indicateurs du registre F après exécution :</strong><br />
<br />
S reste inchangé<br />
Z reste inchangé<br />
H reste inchangé<br />
P reste inchangé<br />
N reste inchangé<br />
C reste inchangé<br />
<br />
<br />
<strong>Temps d'exécution </strong>:<br />
<br />
<table class="formatter-table" style="text-align: center">
    <tr class="formatter-table-row">
        <td class="formatter-table-col">Instruction</td>
        <td class="formatter-table-col">M Cycles</td>
        <td class="formatter-table-col">T States</td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col">EI</td>
        <td class="formatter-table-col">1</td>
        <td class="formatter-table-col">4</td>
    </tr>
</table>]]></description>
			<pubDate>Fri, 15 Aug 2014 07:40:05 +0200</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[Les instructions du Z80]]></title>
			<link>https://msxvillage.fr/wiki/les-instructions-du-z80</link>
			<guid>https://msxvillage.fr/wiki/les-instructions-du-z80</guid>
			<description><![CDATA[Liste des instructions du Z80]]></description>
			<pubDate>Sun, 30 Mar 2014 06:59:29 +0200</pubDate>
			
		</item>
		
	</channel>
</rss>
