SC8P1762E指令一览表
创始人
2025-05-31 09:01:25

控制类

NOP, 空操作


STOP, 进入休眠模式


CLRWDT, 清零看门狗计数器


数据传送

LD,在汇编语言中通常指的是Load


LDIA i, 立即数 i 送给 ACC
LDIA的全称是Load Immediate to Accumulator,意思是“将立即数加载到累加器中”。其中,“Immediate”表示立即数,即一个常数值;“Accumulator”表示累加器,即ACC寄存器。因此,LDIA指令的英文理解为:“将一个立即数值加载到累加器ACC寄存器中”。


TESTZ [R], 将数据存储器内容传给数据存储器
TESTZ是Test Zero的缩写,意思是“测试是否为零”。在汇编语言中,TESTZ指令用于测试一个寄存器或内存单元中的值是否为零。如果为零,则设置标志位;否则清除标志位。因此,可以这样用英文理解TESTZ指令:“测试一个寄存器或内存单元中的值是否为零,如果为零则设置标志位,否则清除标志位”。


逻辑运算

CLRA,Clear ACC


SET [R], 置位数据存储器 R


CLR [R], 清零数据存储器 R


ORA [R], R 与 ACC 内容做“或or”运算,结果存入 ACC
ORR [R], R 与 ACC 内容做“或”运算,结果存入 R


ANDA [R], R 与 ACC 内容做“与”运算,结果存入 ACC
ANDR [R], R 与 ACC 内容做“与”运算,结果存入 R


XORA [R], R 与 ACC 内容做“异或”运算,结果存入 ACC
XORR [R], R 与 ACC 内容做“异或”运算,结果存入 R


SWAPA [R], R 寄存器内容的高低半字节转换,结果存入 ACC
SWAPR [R], R 寄存器内容的高低半字节转换,结果存入 R


COMA [R], R 寄存器内容取反,结果存入 ACC
COMR [R], R 寄存器内容取反,结果存入 R


XORIA i, ACC 与立即数 i 做“异或”运算,结果存入 ACC
ANDIA i, ACC 与立即数 i 做“与”运算,结果存入 ACC
ORIA i, ACC 与立即数 i 做“或”运算,结果存入 ACC


移位操作

RRCA [R], 数据存储器带进位循环右移一位,结果存入 ACC
R: Rotate(旋转)R: Right(右)C: Carry(进位标志位) A: Accumulator(累加器)
RRCR [R], 数据存储器带进位循环右移一位,结果存入 R


RLCA [R], 数据存储器带进位循环左移一位,结果存入 ACC
R: Rotate(旋转)L: Left(左)C: Carry(进位标志位) A: Accumulator(累加器)
RLCR [R], 数据存储器带进位循环左移一位,结果存入 R


RLA [R], 数据存储器不带进位循环左移一位,结果存入 ACC
RLR [R], 数据存储器不带进位循环左移一位,结果存入 R
RRA [R], 数据存储器不带进位循环右移一位,结果存入 ACC
RRR [R], 数据存储器不带进位循环右移一位,结果存入 R


不带进位循环左移,各位同时左移,最高位循环进入最低位和CF

在这里插入图片描述


不带进位循环右移,各位同时右移,最低位进入最高位和CF

在这里插入图片描述


带进位循环左移,CF作为附加位,各位同时左移,CF进入最低位

在这里插入图片描述


带进位循环右移指令,CF作为附加位,各位同时右移,最低位进入CF

在这里插入图片描述


递增递减

INCA [R], 递增数据存储器 R,结果放入 ACC
Increase -> INC增加
INCR [R], 递增数据存储器 R,结果放入 R


DECA [R], 递减数据存储器 R,结果放入 ACC
Decrease -> DEC减小
DECR [R], 递减数据存储器 R,结果放入 R


位操作

CLRB [R],b, 将数据存储器 R 中某位清零
SETB [R],b, 将数据存储器 R 中某位置一


查表

TABLE [R], 读取 ROM 内容结果放入 TABLE_DATAH 与 R
TABLEA, 读取 ROM 内容结果放入 TABLE_DATAH 与 ACC


数学运算

ADDA [R], ACC+[R]→ACC
ADDR [R], ACC+[R]→R
ADDCA [R], ACC+[R]+C→ACC
ADDCR [R], ACC+[R]+C→R
ADDIA i, ACC+i→ACC
SUBA [R], [R]-ACC→ACC
SUBR [R], [R]-ACC→R
SUBCA [R], [R]-ACC-C→ACC
SUBCR [R], [R]-ACC-C→R
SUBIA i, i-ACC→ACC
HSUBA [R], ACC-[R]→ACC
HSUBR [R], ACC-[R]→R
HSUBCA [R], ACC-[R]- ~C →ACC
HSUBCR [R], ACC-[R]- ~C →R
HSUBIA i, ACC-i→ACC
Addition -> 加
Subtract -> 减
HSUBA的英文单词是Halfword Substract Accumulator。半字减累加器


无条件转移

RET,从子程序返回

RET i, 从子程序返回,并将立即数 I 存入 ACC

RETI, 从中断返回

CALL ADD, 子程序调用

JP ADD, 无条件跳转

条件转移

SZB [R],b, 如果数据存储器 R 的 b 位为“0”,则跳过下一条指令
SZB的英文单词是Skip if Zero Bit。

SNZB [R],b, 如果数据存储器 R 的 b 位为“1”,则跳过下一条指令
SNZB的英文单词是Skip if Non-Zero Bit。

SZA [R], 数据存储器 R 送至 ACC,若内容为“0”,则跳过下一条指令
SZA的英文单词是Skip if Zero Accumulator。

SZR [R], 数据存储器 R 内容为“0”,则跳过下一条指令
SZINCA [R], 数据存储器 R 加“1”,结果放入 ACC,若结果为“0”,则跳过下一条指令
SZINCR [R], 数据存储器 R 加“1”,结果放入 R,若结果为“0”,则跳过下一条指令
SZDECA [R], 数据存储器 R 减“1”,结果放入 ACC,若结果为“0”,则跳过下一条指令
SZDECR [R],数据存储器 R 减“1”,结果放入 R,若结果为“0”,则跳过下一条指令

相关内容

热门资讯

[实测了解]“哥哥杭州麻将开挂... 您好:哥哥杭州麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【3636476】很多玩家在这款...
(给大家科普一下)“大运河江苏... 您好:大运河江苏麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【5848499】很多玩家在这...
玩家必备攻略!神皇炸金花是不是... 玩家必备攻略!神皇炸金花是不是有挂!确实真的有挂亲.神皇炸金花这款游戏是可以开挂的,确实是有挂的,通...
科普实测“非常麻将到底是不是有... 您好:非常麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8700483】很多玩家在非常麻将...
重大通报“新金龙辅助”开挂步骤... 您好:新金龙这款游戏可以开挂,确实是有挂的,需要软件加微信【5537821】很多玩家在这款游戏中打牌...