Electronic Circuits and Tutorials
8051/8052 Microcontroller Tutorial

8051 / 8052 Microcontroller Instruction Set :
ACALL - Absolute Call

Operation: ACALL
Function: Absolute Call Within 2K Block
Syntax: ACALL code address
Instructions OpCode Bytes Cycles Flags
ACALL page0 0x11 2 2 None
ACALL page1 0x31 2 2 None
ACALL page2 0x51 2 2 None
ACALL page3 0x71 2 2 None
ACALL page4 0x91 2 2 None
ACALL page5 0xB1 2 2 None
ACALL page6 0xD1 2 2 None
ACALL page7 0xF1 2 2 None

Description: ACALL unconditionally calls a subroutine at the indicated code address. ACALL pushes the address of the instruction that follows ACALL onto the stack, least-significant-byte first, most-significant-byte second. The Program Counter is then updated so that program execution continues at the indicated address.

The new value for the Program Counter is calculated by replacing the least-significant-byte of the Program Counter with the second byte of the ACALL instruction, and replacing bits 0-2 of the most-significant-byte of the Program Counter with 3 bits that indicate the page. Bits 3-7 of the most-significant-byte of the Program Counter remain unchanged.

Since only 11 bits of the Program Counter are affected by ACALL, calls may only be made to routines located within the same 2k block as the first byte that follows ACALL.

See Also: LCALL, RET, Instruction Set

Note: To report broken links or to submit your projects, tutorials please email to Webmaster