?? chabiaoram.asm
字號:
;;;RAM表的程序設計
;;;;讀出表
;;;;設表格的數據均為三字節數據,表格存放于外部RAM中。
;;;;查表時按寄存器R2,R3的內容找出對應的數據送到R6,R2,R3中。
;;;;表格存放于64KB的任意位置。
FRAM_READ:MOV R6,#00H ;;計算表頭地址
MOV R7,#01H
LCALL NSUB_SUB ;;將(R2,R3)減一后送到R4,R5中
MOV A,R5
MOV R7,A
CLR C
RLC A
XCH A,R4
MOV R6,A
RLC A
XCH A,R4
ADD A,DPL
MOV DPL,A
MOV R3,A
MOV A,DPH
ADDC A,R4
MOV DPH, A ;;計算:(R2R3)*2+(DPTR)
MOV R3,A
LCALL NADD_SUB
MOV A,R4
MOV DPH, A
MOV A,R5
MOV DPL,A
MOVX A,@DPTR ;;查表取第一個字節并送R6中
MOV R6,A
INC DPTR
MOVX A,@DPTR ;;查表取第2個字節并送R2中
MOV R2,A
INC DPTR
MOVX A,@DPTR ;;; ;;查表取第3個字節并送R3中
MOV R3,A
RET
NSUB_SUB:MOV A,R3
CLR C
SUBB A,R7
MOV R5,A
MOV A,R2
SUBB A,R5
MOV R4,A
RET
NADD_SUB:MOV A,R3
ADD A,R7
MOV R6,A
MOV A,R3
ADDC A,R6
MOV R4,A
RET
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -