User: alciro    User
 Original    Translate to:  Deutsch  English  Français  中文  
 

Microcontroladores 8051

10.1. 8051 Microcontroller Instruction Set

10.1.1. Addr11 ACALL

Funktion: Absolute Call

Beschreibung:

Bedingungslos ruft ein Unterprogramm ACALL an die angegebene Adresse befindet. Die Anweisung Erhöht den PC zweimal, um die Adresse der folgenden Belehrung, dann schiebt die 16-Bit-Ergebnis auf dem Stapel (Low-Byte zuerst) und der Stack-Pointer Inkrementiert zweimal. Die Zieladresse wird durch sukzessive Verkettung der fünf höherwertigen Bits des erhöhten PC erhalten, Opcode-Bits 7-bis 5, und das zweite Byte des Befehls. Die Must-Called Subroutine starten daher nur innerhalb der 2 K-Block des Programmspeichers als das erste Byte des Befehls Nach ACALL. Gibt Keine Fahnen betroffen.

Beispiel:

INITIALLY SP entspricht 07H. Das Etikett ist am SUBRTN Programmplatz 0345 H. Nach dem Ausführen der folgenden Anweisung,

SUBRTN ACALL

am Standort 0123H enthält SP 09H, 08H internen RAM Standorten und 09H 25H wird und 01H, respectivamente enthalten und den PC 0345H enthält.

Bytes: 2

Zyklen: 2

Encoding:

A10 a9 a8 1 0 0 0 1 , A7 a6 a5 a4 a3 a2 a1 a0

Operation: ACALL

(PC) ← (PC) + 2
(SP) ← (SP) + 1
((SP)) ← (PC7-0)
(SP) ← (SP) + 1
((SP)) ← (PC15-8)
(PC10-0) ← Seite Adresse

10.1.2. ADD A, "src-Byte

Funktion: hinzufügen

Beschreibung:

ADD fügt das Variable Byte angegeben, die Develped, so dass das Ergebnis in der Develped. Die tragen und Hilfskräfte-Carry Flags sind bzw. festgelegt, wenn es eine tragen aus 7 oder Bit 3, und andernfalls deaktiviert. Beim Hinzufügen von Ganzzahlen ohne Vorzeichen, das Carry-Flag zeigt möglicherweise ein Überlauf aufgetreten.

OV wird festgelegt, wenn es eine tragen-Out Bit 6 aber nicht aus 7 gibt, oder zu tragen-Out Bit bit bit 7 aber nicht 6; andernfalls OV deaktiviert ist. Beim Hinzufügen von Ganzzahlen unterzeichnet, OV gibt eine negative Zahl als die Summe der zwei produziert positive Operanden oder positive Summe von zwei negativen Operanden.

vier Quelle Operand Adressierungsmodi sind zulässig: Register, unmittelbare, Register-mittelbare oder unmittelbare.

Beispiel:

die Develped hält 0C3H (1100001lB), und Register 0 hält 0AAH (10101010B). Die folgende Anweisung,

A, R0 hinzufügen

6DH verlässt (01101101B) in die Develped mit der AC Flag deaktiviert das Carry-Flag und OV und auf 1 festgelegt.

Fügen Sie A, Rn

Byte: 1

Zyklen: 1

Codierung:

0 0 1 0 1 R R R

Betrieb: hinzufügen

(A) <-(A) + (Rn)

A, direkt hinzufügen

Byte: 2

Zyklen: 1

Encoding:

0 0 1 0 0 1 0 1 , direkte Adresse

Betrieb: hinzufügen

(a) <-(A) + (direkt)

ADD A,@Ri

Byte: 1

Zyklen: 1

Encoding:

0 0 1 0 0 1 1 ich

Betrieb: hinzufügen

(A) <-(A) + ((Ri))

ADD A, # data

Byte: 2

Zyklen: 1

Encoding:

0 0 1 0 0 1 0 0 , sofortige Daten

Betrieb: hinzufügen

(a) <-(A) + # data

Loading
copyright © 2007-2024  www.alciro.org  All rights reserved.         
Share |