Script - Страница 120

МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА 8051 - Script

Табличные переходы осуществляются с помощью команды «jmp @A+DPTR» (команда 12.54). В этом случае в регистр DPTR записывается адрес начала таблицы, а в аккумулятор - смещение, задающее положение в таблице адреса команды перехода.

mov DPTR, #Table mov A, Index

; DPTR = Начало таблицы

; Получить индекс

clr С ; Умножить на 2 чтобы получить адрес

rlc A

jmp @А + DPTR
Table:

ajmp Element0 ; Переход к разным элементам

ajmp Element1

В этом примере индекс умножается на два (сдвиг влево на один), чтобы получить необходимое смещение в таблице, так как каждый элемент таблицы содержит два байта.

Go to Top