您当前的位置:五五电子网电子知识单片机-工控设备合泰单片机HOLTEK 指令集说明 正文
HOLTEK 指令集说明

HOLTEK 指令集说明

点击数:7505 次   录入时间:03-04 11:41:52   整理:http://www.55dianzi.com   合泰单片机
CPL [m] 对数据存储器取反结果放入数据存储器
说明 本指令是将数据存储器内保存的数值取反
运算过程 [m] .. [m ]
影响标志位
TC2 TC1 TO PD OV Z AC C
CPLA [m] 对数据存储器取反结果放入累加器
说明 本指令是将数据存储器内保存的值取反后结果存放在累加器中
运算过程 ACC .. [m ]
影响标志位
TC2 TC1 TO PD OV Z AC C

HOLTEK 指令集说明
7
DAA [m] 将加法运算后放入累加器的值调整为十进制数并将结果放入数据存储器
说明 本指令将累加器高低四位分别调整为BCD 码如果低四位的值大于9 或AC=1 那
么BCD 调整就执行对原值加6 并且内部进位标志AC1=AC 即AC 求反否则原
值保持不变如果高四位的值大于9 或C=1 那么BCD 调整就执行对原值加6
再加AC1 并把C 置位否则BCD 调整就执行对原值加AC1 C 的值保持不变结果
存放到数据存储器中只有进位标志位C 受影响
操作 如果ACC.3~ACC.0 > 9 或AC=1
那么 [m].3~[m].0 .. ACC.3~ACC.0 +6 AC1= AC
否则 [m].3~[m].0 .. ACC.3~ACC.0 AC1=0
并且
如果ACC.7~ACC.4+AC1 > 9 或C=1
那么 [m].7~[m].4 .. ACC.7~ACC.4 +6+ AC1 C=1
否则 [m].7~[m].4 .. ACC.7~ACC.4 + AC1 C=C
影响标志位
TC2 TC1 TO PD OV Z AC C
DEC [m] 数据存储器的内容减1 结果放入数据存储器
说明 本指令将数据存储器内的数值减一再放回数据存储器
运算过程 [m] .. [m]-1
影响标志位
TC2 TC1 TO PD OV Z AC C
DECA [m] 数据存储器的内容减1 结果放入累加器
说明 本指令将存储器内的数值减一,再放到累加器
运算过程 ACC .. [m]-1
影响标志位
TC2 TC1 TO PD OV Z AC C
HALT 进入暂停模式
说明 本指令终止程序执行并关掉系统时钟RAM 和寄存器内的数值保持原状态WDT 计数
器清0 暂停标志位PD 被设为1 WDT 计数溢出位TO 被清为0
运算过程 PC .. PC+1
PD .. 1
TO .. 0
影响标志位
TC2 TC1 TO PD OV Z AC C
0 1

HOLTEK 指令集说明
8
INC [m] 数据存储器的内容加1 结果放入数据存储器
说明 本指令将数据存储器内的数值加一,结果放回数据存储器
运算过程 [m] .. [m]+1
影响标志位
TC2 TC1 TO PD OV Z AC C
INCA [m] 数据存储器的内容加1 结果放入数据存储器
说明 本指令是将存储器内的数值加一,结果放到累加器
运算过程 ACC .. [m]+1
影响标志位
TC2 TC1 TO PD OV Z AC C
JMP addr 无条件跳转
说明 本指令是将要跳到的目的地直接放到程序计数器内
运算过程 PC .. addr
影响标志位
TC2 TC1 TO PD OV Z AC C
MOV A, [m] 将数据存储器送至累加器
说明 本指令是将数据存储器内的数值送到累加器内
运算过程 ACC .. [m]
影响标志位
TC2 TC1 TO PD OV Z AC C
MOV A, x 将立即数送至累加器
说明 本指令是将立即数送到累加器内
运算过程 ACC .. X
影响标志位
TC2 TC1 TO PD OV Z AC C
MOV [m], A 将累加器送至数据存储器
说明 本指令是将累加器值送到数据存储器内
运算过程 [m] .. ACC
影响标志位
TC2 TC1 TO PD OV Z AC C

HOLTEK 指令集说明
9
NOP 空指令
说明 本指令不作任何运算而只将程序计数器加一
运算过程 PC .. PC+1
影响标志位
TC2 TC1 TO PD OV Z AC C
OR A, [m] 累加器与数据存储器做或运算结果放入累加器
说明 本指令是把累加器数据存储器值做逻辑或结果放到累加器
运算过程 ACC..ACC “OR” [m]
影响标志位
TC2 TC1 TO PD OV Z AC C
OR A, x 累加器与立即数做或运算结果放入累加器
说明 本指令是把累加器值立即数做逻辑或结果放到累加器
运算过程 ACC..ACC “OR” X
影响标志位
TC2 TC1 TO PD OV Z AC C
ORM A, [m] 累加器与数据存储器做或运算结果放入数据存储器
说明 本指令是把累加器值存储器值做逻辑或结果放到数据存储器
运算过程 ACC..ACC “OR” [m]
影响标志位
TC2 TC1 TO PD OV Z AC C
RET 从子程序返回
说明 本指令是将堆栈寄存器中的程序计数器值送回程序计数器
运算过程 PC .. Stack
影响标志位
TC2 TC1 TO PD OV Z AC C
RET A, x 从子程序返回并将立即数放入累加器
说明 本指令是将堆栈寄存器中的程序计数器值送回程序计数器并将立即数送回累加器
运算过程 PC .. Stack
ACC .. X
影响标志位
TC2 TC1 TO PD OV Z AC C

HOLTEK 指令集说明
10
RETI 从中断返回
说明 本指令是将堆栈寄存器中的程序计数器值送回程序计数器与RET 不同的是它使用在
中断程序结束返回时它还会将中断控制寄存器INTC 的0 位EMI 中断允许位置1
允许中断服务
运算过程 PC .. Stack
EMI .. 1
影响标志位
TC2 TC1 TO PD OV Z AC C
RL [m] 数据存储器左移一位结果放入数据存储器
说明 本指令是将数据存储器内的数值左移一位第7 位移到第0 位结果送回数据存储器
运算过程 [m].0 ..[m].7, [m]. i+1 ..[m].i :i=0~6
影响标志位
TC2 TC1 TO PD OV Z AC C
RLA [m] 数据存储器左移一位结果放入累加器
说明 本指令是将存储器内的数值左移一位第7 位移到第0 位结果送到累加器而数据存
储器内的数值不变
运算过程 ACC.0 ..[m].7, ACC. i+1 ..[m].i :i=0~6
影响标志位
TC2 TC1 TO PD OV Z AC C
RLC [m] 带进位将数据存储器左移一位结果放入数据存储器
说明 本指令是将存储器内的数值与进位位左移一位第7 位取代进位标志进位标志移到第
0 位结果送回数据存储器
运算过程 [m]. i+1 ..[m].i :i=0~6
[m].0 ..C
C .. [m].7
影响标志位
TC2 TC1 TO PD OV Z AC C
RLCA [m] 带进位将数据存储器左移一位结果放入累加器
说明 本指令是将存储器内的数值与进位位左移一位第七位取代进位标志进位标志移到第
0 位结果送回累加器
运算过程 ACC. i+1 ..[m].i :i=0~6
ACC.0 ..C
C .. [m].7
影响标志位
TC2 TC1 TO PD OV Z AC C

HOLTEK 指令集说明
11
RR [m] 数据存储器右移一位结果放入数据存储器
说明 本指令是将存储器内的数值循环右移第0 位移到第7 位结果送回数据存储器
运算过程 [m].7 ..[m].0, [m].i ..[m]. i+1 : i=0~6
影响标志位
TC2 TC1 TO PD OV Z AC C
RRA [m] 数据存储器右移一位结果放入累加器
说明 本指令是将数据存储器内的数值循环右移第0 位移到第7 位结果送回累加器而数
据存储器内的数值不变
运算过程 ACC.7 ..[m].0, ACC.i ..[m]. i+1 :i=0~6
影响标志位
TC2 TC1 TO PD OV Z AC C
RRC [m] 带进位将数据存储器右移一位结果放入数据存储器
说明 本指令是将存储器内的数值加进位位循环右移第0 位取代进位标志进位标志移到第
7 位结果送回存储器
运算过程 [m].i ..[m]. i+1 :i=0~6
[m]. 7 ..C
C .. [m].0
影响标志位
TC2 TC1 TO PD OV Z AC C
RRCA [m] 带进位将数据存储器右移一位结果放入累加器
说明 本指令是将数据存储器内的数值加进位位循环右移第0 位取代进位标志进位标志移
到第7 位结果送回累加器数据存储器内的数值不变
运算过程 ACC.i ..[m]. i+1 i=0~6
ACC.7 ..C
C .. [m].0
影响标志位
TC2 TC1 TO PD OV Z AC C
SBC A,[m] 累加器与数据存储器进位标志相减结果放入累加器
说明 本指令是把累加器值减去数据存储器值以及进位标志的取反结果放到累加器
运算过程 ACC..ACC+[m ]+ C
影响标志位
TC2 TC1 TO PD OV Z AC C

HOLTEK 指令集说明
12
SBCM A,[m] 累加器与数据存储器进位标志相减结果放入数据存储器
说明 本指令是把累加器值减去数据存储器值以及进位标志取反结果放到数据存储器
运算过程 [m]..ACC+[m]+C
影响标志位
TC2 TC1 TO PD OV Z AC C
SDZ [m] 数据存储器减1 如果结果为0 则跳过下一条指令
说明 本指令是把数据存储器内的数值减1 判断是否为0 若为0 则跳过下一条指令即如
果结果为零放弃在目前指令执行期间所取得的下一条指令并插入一个空周期用以取
得正确的指令二个指令周期否则执行下一条指令一个指令周期
运算过程 如果[m]-1=0 跳过下一条指令执行再下一条
影响标志位
TC2 TC1 TO PD OV Z AC C
SDZA [m] 数据存储器减1 将结果放入累加器如果结果为0 则跳过下一条指令
说明 本指令是把数据存储器内的数值减1 判断是否为0, 为0 则跳过下一行指令并将减完后
数据存储器内的数值送到累加器,而数据存储器内的值不变即若结果为0 放弃在目前
指令执行期间所取得的下一条指令并插入一个空周期用以取得正确的指令二个指令
周期否则执行下一条指令一个指令周期
运算过程 如果[m]-1=0 跳过下一条指令执行再下一条
ACC .. [m]-1
影响标志位
TC2 TC1 TO PD OV Z AC C
SET [m] 置位数据存储器
说明 本指令是把存储器内的数值每个位置为1
运算过程 [m] .. FFH
影响标志位
TC2 TC1 TO PD OV Z AC C
SET [m]. i 将数据存储器的第i 位置1
说明 本指令是把存储器内的数值的第i 位置为1
运算过程 [m].i ..1
影响标志位
TC2 TC1 TO PD OV Z AC C

HOLTEK 指令集说明
13
SIZ [m] 数据存储器加1 如果结果为0 则跳过下一条指令
说明 本指令是把数据存储器内的数值加1 判断是否为0 若为0 跳过下一条指令即放弃

上一页  [1] [2] [3]  下一页


本文关键字:暂无联系方式合泰单片机单片机-工控设备 - 合泰单片机