PIC單片機的查表程序可以利用子程序帶值返回的特點來實現(xiàn)。具體是在主程序中先取表數據地址放入W,接著調用子程序,子程序的第一條指令將W置入PC,則程序跳到數據地址的地方,再由“RETLW”指令將數據放入W返回到主程序。下面程序以F10放表頭地址。
MOVLW TABLE ;表頭地址→F10
MOVWF 10
┋
MOVLW 1 ?。?→W,準備取“1”的線段值
ADDWF 10,1 ?。籉10+W =“1”的數據地址
CALL CONVERT
MOVWF 6 ?。痪€段值置到B口,點亮LED
┋
CONVERT MOVWF 2 ;W→PC TABLE
RETLW 0C0H ?。弧?”線段值
RETLW 0F9H ?。弧?”線段值
┋
RETLW 90H ??;“9”線段值