Section courante

A propos

Section administrative du site

 Langage  Elément  Emulateur  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
Rust
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Référence
VCC
Préface
Notes légal
Dictionnaire
Recherche

Référence des instructions de l'assembleur du microprocesseur 6800 vue par opcode :

Mnémonique Syntaxe Mode Octets Code Cycles C Z S O Ac I Opération symbolique Description
ABA ABA ACC 1 01Bh 2 x x x x x - [A] ← [A] + [B] Cette instruction permet d'ajouter l'adressage de registre B dans l'adressage de registre A.
ADC ADC A data8 IMM 2 089h 2 x x x x x - [A] ← [A] + data8 + C Cette instruction permet d'ajouter le contenu de la mémoire et le drapeau de retenue dans le registre accumulateur.
ADC A addr8 DIR 2 099h 3 [A] ← [A] + [addr8] + C
ADC A data8,X IDX 2 0A9h 5 [A] ← [A] + [data8 + [X]] + C
ADC A addr16 EXT 3 0B9h 4 [A] ← [A] + [addr16] + C
ADC B #data8 IMM 2 0C9h 2 [B] ← [B] + data8 + C
ADC B addr8 DIR 2 0D9h 3 [B] ← [B] + [addr8] + C
ADC B data8,X IDX 2 0E9h 5 [B] ← [B] + [data8 + [X]] + C
ADC B addr16 EXT 3 0F9h 4 [B] ← [B] + [addr16] + C
ADD ADD A #data8 IMM 2 08Bh 2 x x x x x - [A] ← [A] + data8 Cette instruction permet d'ajouter le contenu de la mémoire dans le registre accumulateur.
ADD A addr8 DIR 2 09Bh 3 [A] ← [A] + [addr8]
ADD A data8,X IDX 2 0ABh 5 [A] ← [A] + [data8 + [X]]
ADD A addr16 EXT 3 0BBh 4 [A] ← [A] + [addr16]
ADD B #data8 IMM 2 0CBh 2 [B] ← [B] + data8
ADD B addr8 DIR 2 0DBh 3 [B] ← [B] + [addr8]
ADD B data8,X IDX 2 0EBh 5 [B] ← [B] + [data8 + [X]]
ADD B addr16 EXT 3 0FBh 4 [B] ← [B] + [addr16]
AND AND A #data8 IMM 2 084h 2 - x x 0 - - [A] ← [A] ∩ data8 Cette instruction permet d'effectuer un «Et binaire» d'un registre accumulateur avec opérande.
AND A addr8 DIR 2 094h 3 [A] ← [A] ∩ [addr8]
AND A data8,X IDX 2 0A4h 5 [A] ← [A] ∩ [data8 + [X]]
AND A addr16 EXT 3 0B4h 4 [A] ← [A] ∩ [addr16]
AND B #data8 IMM 2 0C4h 2 [B] ← [B] ∩ data8
AND B addr8 DIR 2 0D4h 3 [B] ← [B] ∩ [addr8]
AND B data8,X IDX 2 0E4h 5 [B] ← [B] ∩ [data8 + [X]]
AND B addr16 EXT 3 0F4h 4 [B] ← [B] ∩ [addr16]
ASL ASL A ACC 1 048h 2 x x x x - - Cette instruction permet d'effectuer un décalage arithmétique vers la gauche et fixe le bit 0 à 0.
ASL B ACC 1 058h 2
ASL data8,X IDX 2 068h 7
ASL addr16 EXT 3 078h 6
ASR ASR A ACC 1 047h 2 x x x x - - Cette instruction permet d'effectuer un décalage arithmétique vers la droite et fixe le bit 7 avec le même.
ASR B ACC 1 057h 2
ASR data8,X IDX 2 067h 7
ASR addr16 EXT 3 077h 6
BCC BCC disp REL 2 024h 4 - - - - - - SI C = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si le drapeau de retenue est effacé.
BCS BCS disp REL 2 025h 4 - - - - - - SI C = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si le drapeau de retenue est fixé.
BEQ BEQ disp REL 2 027h 4 - - - - - - SI Z = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si égale à zéro.
BGE BGE disp REL 2 02Ch 4 - - - - - - SI S XOR O = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si supérieur ou égale à 0.
BGT BGT disp REL 2 02Eh 4 - - - - - - SI Z U (S XOR O) = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si supérieur à 0.
BHI BHI disp REL 2 022h 4 - - - - - - SI C U Z = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si le contenu de l'accumulateur est supérieur au comparé.
BIT BIT A #data8 IMM 2 085h 2 - x x 0 - - [A] ∩ data8 Cette instruction permet d'effectuer un «Et binaire» avec l'accumulateur en changeant seulement le registre d'état.
BIT A addr8 DIR 2 095h 3 [A] ∩ [addr8]
BIT A data8,X IDX 2 0A5h 5 [A] ∩ [data8 + [X]]
BIT A addr16 EXT 3 0B5h 4 [A] ∩ [addr16]
BIT B #data8 IMM 2 0C5h 2 [B] ∩ data8
BIT B addr8 DIR 2 0D5h 3 [B] ∩ [addr8]
BIT B data8,X IDX 2 0E5h 5 [B] ∩ [data8 + [X]]
BIT B addr16 EXT 3 0F5h 4 [B] ∩ [addr16]
BLE BLE disp REL 2 02Fh 4 - - - - - - SI Z U (S XOR O) = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si inférieur ou égale à 0.
BLS BLS disp REL 2 023h 4 - - - - - - SI C U Z = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si le contenu de l'accumulateur est inférieur ou le même que le comparé.
BLT BLT disp REL 2 02Dh 4 - - - - - - SI S XOR O = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si inférieur à 0.
BMI BMI disp REL 2 02Bh 4 - - - - - - SI S = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si négatif.
BNE BNE disp REL 2 026h 4 - - - - - - SI Z = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si n'est pas égale à 0.
BPL BPL disp REL 2 02Ah 4 - - - - - - SI S = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si positif.
BRA BRA disp REL 2 020h 4 - - - - - - [PC] ← [PC] + disp + 2 Cette instruction permet d'effectuer un branchement inconditionnel relatif au contenu du registre PC (Program Counter).
BSR BSR disp REL 2 08Dh 8 - - - - - - [[SP]] ← [PC(LO)],
[[SP] - 1] ← [PC(HI)],
[SP] ← [SP] - 2,
[PC] ← [PC] + disp + 2
Cette instruction permet d'effectuer un branchement inconditionnel à la sous-routine situé relativement au contenu du registre PC (Program Counter).
BVC BVC disp REL 2 028h 4 - - - - - - SI O = 0 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si le drapeau de débordement est effacé.
BVS BVS disp REL 2 029h 4 - - - - - - SI O = 1 ALORS
[PC] ← [PC] + disp + 2
FIN SI
Cette instruction permet d'effectuer un branchement si le drapeau de débordement est fixé.
CBA CBA INH 1 011h 2 x x x x - - [A] - [B] Cette instruction permet de comparer le contenu des registres accumulateurs A et B.
CLC CLC INH 1 00Ch 2 0 - - - - - C ← 0 Cette instruction permet d'effacer le drapeau de retenue.
CLI CLI INH 1 00Eh 2 - - - - - 0 I ← 0 Cette instruction permet d'effacer le drapeau d'interruption et active les interruptions.
CLR CLR A ACC 1 04Fh 2 0 1 0 0 - - [A] ← 0 Cette instruction permet d'effacer l'opérande.
CLR B ACC 1 05Fh 2 [B] ← 0
CLR data8,X IDX 2 06Fh 7 [data8 + [X]] ← 0 Cette instruction permet d'effacer l'emplacement mémoire.
CLR addr16 EXT 3 07Fh 6 [addr16] ← 0
CLV CLV INH 1 00Ah 2 - - - 0 - - O ← 0 Cette instruction permet d'effacer le drapeau de débordement.
CMP CMP A #data8 IMM 2 081h 2 x x x x - - [A] - data8 Cette instruction permet de comparer le contenu de la mémoire et de l'accumulateur.
CMP A addr8 DIR 2 091h 3 [A] - [addr8]
CMP A data8,X IDX 2 0A1h 5 [A] - [data8 + [X]]
CMP A addr16 EXT 3 0B1h 4 [A] - [addr16]
CMP B #data8 IMM 2 0C1h 2 [B] - data8
CMP B addr8 DIR 2 0D1h 3 [B] - [addr8]
CMP B data8,X IDX 2 0E1h 5 [B] - [data8 + [X]]
CMP B addr16 EXT 3 0F1h 4 [B] - [addr16]
COM COM A ACC 1 043h 2 1 x x 0 - - [A] ← 0FFh - [A] Cette instruction permet de calculer le complément de l'opérande.
COM B ACC 1 053h 2 [B] ← 0FFh - [B]
COM data8,X IDX 2 063h 7 [data8 + [X]] ← 0FFh - [data8 + [X]] Cette instruction permet de calculer le complément de l'emplacement mémoire.
COM addr16 EXT 3 073h 6 [addr16] ← 0FFh - [addr16]
CPX CPX addr8 DIR 2 09Ch 4 - x x x - - [X(HI)] - [addr8],
[X(LO)] - [addr8 + 1]
Cette instruction permet de comparer le contenu de la mémoire avec le registre d'index X.
CPX data8,X IDX 2 0ACh 6 [X(HI)] - [data8 + [X]],
[X(LO)] - [data8 + [X] + 1]
CPX #data16 IMM 3 08Ch 3 [X(HI)] - data16(HI),
[X(LO)] - data16(LO)
CPX addr16 EXT 3 0BCh 5 [X(HI)] - [addr16(HI)],
[X(LO)] - [addr16(LO)]
DAA DAA INH 1 019h 2 x x x x - - Cette instruction permet d'effectuer l'ajustement décimal du registre accumulateur A.
DEC DEC A ACC 1 04Ah 2- x x x - - [A] ← [A] - 1 Cette instruction permet de décrémenter une opérande.
DEC B ACC 1 05Ah 2 [B] ← [B] - 1
DEC data8,X IDX 2 06Ah 7 [data8 + [X]] ← [data8 + [X]] - 1 Cette instruction permet de décrémenter un emplacement mémoire
DEC addr16 EXT 3 07Ah 6 [addr16] ← [addr16] - 1
DES DES INH 1 034h 4 - - - - - - [SP] ← [SP] - 1 Cette instruction permet de décrémenter le pointeur de pile.
DEX DEX INH 1 009h 4 - x - - - - [X] ← [X] - 1 Cette instruction permet de décrémenter le registre d'index X.
EOR EOR A #data8 IMM 2 088h 2 - x x 0 - - [A] ← [A] XOR data8 Cette instruction permet d'effectuer un «Ou exclusif binaire» d'un accumulateur avec le contenu de la mémoire.
EOR A addr8 DIR 2 098h 3 [A] ← [A] XOR [addr8]
EOR A data8,X IDX 2 0A8h 5 [A] ← [A] XOR [data8 + [X]]
EOR A addr16 EXT 3 $B8 4 [A] ← [A] XOR [addr16]
EOR B #data8 IMM 2 0C8h 2 [B] ← [B] XOR data8
EOR B addr8 DIR 2 0D8h 3 [B] ← [B] XOR [addr8]
EOR B data8,X IDX 2 0E8h 5 [B] ← [B] XOR [data8 + [X]]
EOR B addr16 EXT 3 0F8h 4 [B] ← [B] XOR [addr16]
INC INC A ACC 1 04Ch 2 - x x x - - [A] ← [A] + 1 Cette instruction permet d'incrémenter une opérande.
INC B ACC 1 05Ch 2 [B] ← [B] + 1
INC data8,X IDX 2 06Ch 7 [data8 + [X]] ← [data8 + [X]] + 1 Cette instruction permet d'incrémenter l'emplacement mémoire.
INC addr16 EXT 3 07Ch 6 [addr16] ← [addr16] + 1
INS INS INH 1 031h 4 - - - - - - [SP] ← [SP] + 1 Cette instruction permet d'incrémenter le pointeur de pile.
INX INX INH 1 008h 4 - x - - - - [X] ← [X] + 1 Cette instruction permet d'incrémenter le registre d'index X.
JMP JMP data8,X IDX 2 06Eh 4 - - - - - - [PC] ← data8 + [X] Cette instruction permet de faire un branchement inconditionnel.
JMP addr16 EXT 3 07Eh 3 [PC] ← addr16
JSR JSR data8,X IDX 2 0ADh 8 - - - - - - [[SP]] ← [PC(LO)],
[[SP] - 1] ← [PC(HI)],
[SP] ← [SP] - 2,
[PC] ← data8 + [X]
Cette instruction permet de faire un saut à une sous-routine.
JSR addr16 EXT 3 0BDh 9 [[SP]] ← [PC(LO)],
[[SP] - 1] ← [PC(HI)],
[SP] ← [SP] - 2,
[PC] ← addr16
LDA LDA A #data8 IMM 2 086h 2 - x x 0 - - [A] ← data8 Cette instruction permet de charger l'accumulateur en mémoire.
LDA A addr8 DIR 2 096h 3 [A] ← [addr8]
LDA A data8,X IDX 2 0A6h 5 [A] ← [data8 + [X]]
LDA A addr16 EXT 3 0B6h 4 [A] ← [addr16]
LDA B #data8 IMM 2 0C6h 2 [B] ← data8
LDA B addr8 DIR 2 0D6h 3 [B] ← [addr8]
LDA B data8,X IDX 2 0E6h 5 [B] ← [data8 + [X]]
LDA B addr16 EXT 3 0F6h 4 [B] ← [addr16]
LDS LDS addr8 DIR 2 09Eh 4 - x x 0 - - [SP(HI)] ← [addr8],
[SP(LO)] ← [addr8 + 1]
Cette instruction permet de charger le pointeur de pile.
LDS data8,X IDX 2 0AEh 6 [SP(HI)] ← [data8 + [X]],
[SP(LO)] ← [data8 + [X] + 1]
LDS #data16 IMM 3 08Eh 3 [SP(HI)] ← data16(HI),
[SP(LO)] ← data16(LO)
LDS addr16 EXT 3 0BEh 5 [SP(HI)] ← [addr16(HI)],
[SP(LO)] ← [addr16(LO)]
LDX LDX addr8 DIR 2 0DEh 4 - x x 0 - - [X(HI)] ← [addr8],
[X(LO)] ← [addr8 + 1]
Cette instruction permet de charger le registre d'index.
LDX data8,X IDX 2 0EEh 6 [X(HI)] ← [data8 + [X]],
[X(LO)] ← [data8 + [X] + 1]
LDX #data16 IMM 3 0CEh 3 [X(HI)] ← data16(HI),
[X(LO)] ← data16(LO)
LDX addr16 EXT 3 0FEh 5 [X(HI)] ← [addr16(HI)],
[X(LO)] ← [addr16(LO)]
LSR LSR A ACC 1 044h 2 x x 0 x - - Cette instruction permet d'effectuer un décalage logique vers la gauche et le bit 7 est fixé à 0.
LSR B ACC 1 054h 2
LSR data8,X IDX 2 064h 7
LSR addr16 EXT 3 074h 6
NEG NEG A ACC 1 040h 2 x x x x - - [A] ← 0 - [A] Cette instruction permet d'effectuer une négation de l'opérande.
NEG B ACC 1 050h 2 [B] ← 0 - [B]
NEG data8,X IDX 2 060h 7 [data8 + [X]] ← 0 - [data8 + [X]] Cette instruction permet d'effectuer une négation de l'emplacement mémoire.
NEG addr16 EXT 3 070h 6 [addr16] ← 0 - [addr16]
NOP NOP INH 1 001h 2 - - - - - - Cette instruction ne fait pas d'opération.
ORA ORA A #data8 IMM 2 08Ah 2 - x x 0 - - [A] ← [A] U data8 Cette instruction permet d'effectuer un «Ou binaire» d'un accumulateur avec le contenu de la mémoire.
ORA A addr8 DIR 2 09Ah 3 [A] ← [A] U [addr8]
ORA A data8,X IDX 2 0AAh 5 [A] ← [A] U [data8 + [X]]
ORA A addr16 EXT 3 0BAh 4 [A] ← [A] U [addr16]
ORA B #data8 IMM 2 0CAh 2 [B] ← [B] U data8
ORA B addr8 DIR 2 0DAh 3 [B] ← [B] U [addr8]
ORA B data8,X IDX 2 0EAh 5 [B] ← [B] U [data8 + [X]]
ORA B addr16 EXT 3 0FAh 4 [B] ← [B] U [addr16]
PSH PSH A ACC 1 036h 4 - - - - - - [[SP]] ← [A], [SP] ← [SP] - 1 Cette instruction permet d'empiler l'accumulateur dans la pile.
PSH B ACC 1 037h 4 [[SP]] ← [B],
[SP] ← [SP] - 1
PUL PUL A ACC 1 032h 4 - - - - - - [SP] ← [SP] + 1, [A] ← [[SP]] Cette instruction permet de dépiler des données de la pile vers l'accumulateur.
PUL B ACC 1 033h 4 [SP] ← [SP] + 1,
[B] ← [[SP]]
ROL ROL A ACC 1 049h 2 x x x x - - Cette instruction permet d'effectuer une rotation vers la gauche dans le bit de retenue.
ROL B ACC 1 059h 2
ROL data8,X IDX 2 069h 7
ROL addr16 EXT 3 079h 6
ROR ROR A ACC 1 046h 2 x x x x - - Cette instruction permet d'effectuer une rotation vers la droite dans le bit de retenue.
ROR B ACC 1 056h 2
ROR data8,X IDX 2 066h 7
ROR addr16 EXT 3 076h 6
RTI RTI INH 1 03Bh 10 x x x x x x [SR] ← [[SP] + 1],
[B] ← [[SP] + 2],
[A] ← [[SP] + 3],
[X(HI)] ← [[SP] + 4],
[X(LO)] ← [[SP] + 5],
[PC(HI)] ← [[SP] + 6],
[PC(LO)] ← [[SP] + 7],
[SP] ← [SP] + 7
Cette instruction permet de retourner d'une interruption.
RTS RTS INH 1 039h 5 - - - - - - [PC(HI)] ← [[SP] + 1],
[PC(LO)] ← [[SP] + 2],
[SP] ← [SP] + 2
Cette instruction permet de retourner d'une sous-routine.
SBA SBA INH 1 010h 2 x x x x - - [A] ← [A] - [B] Cette instruction permet de soustraire le contenu de l'accumulateur B de l'accumulateur A.
SBC SBC A #data8 IMM 2 082h 2 x x x x - - [A] ← [A] - data8 - C Cette instruction permet de soustraire le contenu de la mémoire et du drapeau de retenue de l'accumulateur.
SBC A addr8 DIR 2 092h 3 [A] ← [A] - [addr8] - C
SBC A data8,X IDX 2 0A2h 5 [A] ← [A] - [data8 + [X]] - C
SBC A addr16 EXT 3 0B2h 4 [A] ← [A] - [addr16] - C
SBC B #data8 IMM 2 0C2h 2 [B] ← [B] - data8 - C
SBC B addr8 DIR 2 0D2h 3 [B] ← [B] - [addr8] - C
SBC B data8,X IDX 2 0E2h 5 [B] ← [B] - [data8 + [X]] - C
SBC B addr16 EXT 3 0F2h 4 [B] ← [B] - [addr16] - C
SEC SEC INH 1 00Dh 2 1 - - - - - C ← 1 Cette instruction permet de fixer le drapeau de retenue.
SEI SEI INH 1 00Fh 2 - - - - - 1 I ← 1 Cette instruction permet de fixer le drapeau d'interruption et désactive les interruptions.
SEV SEV INH 1 00Bh 2 - - - 1 - - O ← 1 Cette instruction permet de fixer le drapeau de débordement.
STA STA A addr8 DIR 2 097h 4 - x x 0 - - [addr8] ← [A] Cette instruction permet d'entreposer l'accumulateur en mémoire.
STA A data8,X IDX 2 0A7h 6 [data8 + [X]] ← [A]
STA A addr16 EXT 3 0B7h 5 [addr16] ← [A]
STA B addr8 DIR 2 0D7h 4 [addr8] ← [B]
STA B data8,X IDX 2 0E7h 6 [data8 + [X]] ← [B]
STA B addr16 EXT 3 0F7h 5 [addr16] ← [B]
STS STS addr8 DIR 2 09Fh 5 - x x 0 - - [addr8] ← [SP(HI)],
[addr8 + 1] ← [SP(LO)]
Cette instruction permet d'entreposer le pointeur de pile.
STS data8,X IDX 2 0AFh 7 [data8 + [X]] ← [SP(HI)],
[data8 + [X] + 1] ← [SP(LO)]
STS addr16 EXT 3 0BFh 6 [addr16(HI)] ← [SP(HI)],
[addr16(LO)] ← [SP(LO)]
STX STX addr8 DIR 2 0DFh 5 - x x 0 - - [addr8] ← [X(HI)],
[addr8 + 1] ← [X(LO)]
Cette instruction permet d'entreposer le registre d'index X.
STX data8,X IDX 2 0EFh 7 [data8 + [X]] ← [X(HI)],
[data8 + [X] + 1] ← [X(LO)]
STX addr16 EXT 3 0FFh 6 [addr16(HI)] ← [X(HI)],
[addr16(LO)] ← [X(LO)]
SUB SUB A #data8 IMM 2 080h 2 x x x x - - [A] ← [A] - data8 Cette instruction permet de soustraire le contenu de la mémoire de l'accumulateur.
SUB A addr8 DIR 2 090h 3 [A] ← [A] - [addr8]
SUB A data8,X IDX 2 0A0h 5 [A] ← [A] - [data8 + [X]]
SUB A addr16 EXT 3 0B0h 4 [A] ← [A] - [addr16]
SUB B #data8 IMM 2 0C0h 2 [B] ← [B] - data8
SUB B addr8 DIR 2 0D0h 3 [B] ← [B] - [addr8]
SUB B data8,X IDX 2 0E0h 5 [B] ← [B] - [data8 + [X]]
SUB B addr16 EXT 3 0F0h 4 [B] ← [B] - [addr16]
SWI SWI INH 1 03Fh 12 - - - - - 1 [[SP]] ← [PC(LO)],
[[SP] - 1] ← [PC(HI)],
[[SP] - 2] ← [X(LO)],
[[SP] - 3] ← [X(HI)],
[[SP] - 4] ← [A],
[[SP] - 5] ← [B],
[[SP] - 6] ← [SR],
[SP] ← [SP] - 7,
[PC(HI)] ← [$FFFA],
[PC(LO)] ← [$FFFB]
Cette instruction permet d'effectuer une interruption logiciel, soit d'empiler les registres sur la pile, de décrémenter le pointeur de pile et de sauter à la sous-routine d'interruption.
TAB TAB INH 1 016h 2 - x x 0 - - [B] ← [A] Cette instruction permet de transférer le registre A vers registre B.
TAP TAP INH 1 006h 2 x x x x x - [SR] ← [A] Cette instruction permet de transférer le registre A vers le registre d'état.
TBA TBA INH 1 017h 2 - x x 0 - - [A] ← [B] Cette instruction permet de transférer le registre B vers registre A.
TPA TPA INH 1 007h 2 - - - - - - [A] ← [SR] Cette instruction permet de transférer le registre d'état vers le registre A.
TST TST A ACC 1 04Dh 2 0 x x 0 - - [A] - 0 Cette instruction permet d'effectuer un test de l'opérande.
TST B ACC 1 05Dh 2 [B] - 0
TST data8,X IDX 2 06Dh 7 [data8 + [X]] - 0 Cette instruction permet d'effectuer un test de l'emplacement mémoire.
TST addr16 EXT 3 07Dh 6 [addr16] - 0
TSX TSX INH 1 030h 4 - - - - - - [X] ← [SP] + 1 Cette instruction permet de copier le contenu du pointeur de pile vers le registre d'index et de l'incrémenter.
TXS TXS INH 1 035h 4 - - - - - - [SP] ← [X] - 1 Cette instruction permet de copier le contenu du registre d'index vers le pointeur de pile et de le décrémenter.
WAI WAI INH 1 03Eh 9 - - - - - 1 [[SP]] ← [PC(LO)],
[[SP] - 1] ← [PC(HI)],
[[SP] - 2] ← [X(LO)],
[[SP] - 3] ← [X(HI)],
[[SP] - 4] ← [A],
[[SP] - 5] ← [B],
[[SP] - 6] ← [SR],
[SP] ← [SP] - 7
Cette instruction permet d'empiler les registres dans la pile, de décrémenter le pointeur de pile et d'attendre après une interruption.


PARTAGER CETTE PAGE SUR
Dernière mise à jour : Mardi, le 24 juillet 2018