M8Rxxx 指令集说明 Version 年 11 月 上海磐芯电子有限公司 SHANGHAI MASSES ELECTRONIC Co., Ltd. 本公司保留对产品在可靠性, 功能和设计方面的改进作进一步说明的权利 说明文档的更改, 恕不另行通知

Similar documents
Microsoft Word - Ö¸Á.doc

1. 介绍 义隆 8 位单片机指令介绍 Application Notes 义隆 8 位单片机指令介绍 EM78/EM88 系列是基于 RISC 的精简指令微控制器, 每条指令是 13 位 15 位, 除 LCALL LJMP MOV R2,A ADD R2,A 改变 PC 指针的指令是 2 个指令

CH559指令周期.doc

EPROM/ROM-Based 8-Bit Microcontroller Series

QG153中文版说明书.docx

OTP-Based 8-Bit Microcontroller Series

33023A.book(31005A_cn.fm)

OTP-Based 8-Bit Microcontroller Series

Microsoft Word - em78 sub program.doc

MSP430ϵÁе¥Æ¬»úµÄÖ¸Áîϵͳ.pps [¼æÈÝģʽ]


Microsoft PowerPoint sun-arm isa2.ppt [Compatibility Mode]

QG701中文版说明书.docx

PIC8位单片机汇编语言常用指令的识读(上)

寻医问药指南(十七)

Microsoft Word - S153B.doc

MDT90P01 4-Bit RISC MCU 使用及注意事项 1. MDT90P01 4-bit RISC MCU PIN MAP: SOT-26 PB0 1 6 PB3 VSS 2 5 VDD PB1 3 4 PB2/RTCC 2. IC 烧入注意事项 : A. 需制作转接座 : Writer

标题

3.3.2 算术运算指令 数据类型 : 无符号和有符号整数 无符号数又分成 : 无符号二进制数 ; 无符号压缩十进制 :1 字节表示 2 个十进制数 ; 无符号非压缩十进制 :1 字节表示 1 个十进制数 有符号数 : 有符号二进制数 用补码表示 2015 年 3 月 26 日星期四 11 时 3

穨series019-IA.PDF

" % % $!"#$%& (&#)$$ *&+,+-#".%&$+*- /*&0+- 1&*2%3)&#"+$%3.%&$+*- /4#&5#6 74% /*-$(&)2(+.+$( $ 811&*#24 (*!&*)-3%3 74%*&9 :%""$ & ( ;#.%$!""& )(* + ))

地 球 科 學 質 在 第 壹 部 分 ( 高 一 基 礎 地 球 科 學 ) 的 出 題 題 數 最 多, 氣 象 部 分 次 之, 而 天 文 與 氣 象 的 題 數 比 例 也 一 直 是 相 互 增 減, 由 此 可 以 看 出 命 題 委 員 在 命 題 時 仍 會 注 意 評 量 內 容

BJ2C004ANB

<4D F736F F D20B5DA33D5C D A3A84CA3A9B5C4D6B8C1EECFB5CDB32E646F6378>


学习MSP430单片机推荐参考书

至 尊 法 王 蒋 阳 龙 朵 加 参 尊 者 上 师 瑜 伽 皈 依 境

《佛子行三十七颂》讲记1

(给多有拉姆)佛子行三十七颂1——7

微机第02章1(指令寻址)

微机原理(计算机原理与接口技术)

Microsoft Word - 1HF12序.doc

Microsoft Word - 讀報看科普─人體篇_橫_.doc

Microsoft Word - 2B802內文.doc

鍟嗗搧瑙傚療鈥㈤挗鏉

席 远 杨 一 人 了, 正 当 她 开 枪 时 却 发 现 子 弹 没 了 该 死, 只 能 赤 手 空 拳 了 洛 水 云 与 席 远 杨 交 起 手 来, 洛 水 云 出 手 招 招 致 命 想 那 席 远 杨 也 不 是 泛 泛 之 辈, 很 快 掌 握 了 洛 水 云 出 招 路 数 看

東區校園中法治教育種子師資教學研習營

閱 讀 素 材 V.S 分 組 方 式 的 差 異 化 教 學 工 具 表 班 級 :( ) 閱 讀 素 材 V.S 分 組 方 式 獨 立 閱 讀 夥 伴 閱 讀 ( 同 質 性 ) 夥 伴 閱 讀 ( 異 質 性 ) 友 善 陪 伴 虛 心 受 教 國 語 日 報 新 聞 生 活 文 藝 兒 童

書本介紹


江人发2009年第49号突发事件应对法培训.doc

98年度即測即評學科測試與即測即評即發證技術士技能檢定簡章

Microsoft Word 箕æ−¥ï¼‹å®ı稿;

指令系统 可分成如下 6 类 : 数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令 程序控制指令 处理器控制指令 2015 年 3 月 26 日星期四 8 时 41 分 27 秒 2

Microsoft Word - xiuxinduanyu-2-doc.doc

EMC单片机学习笔记.doc

AVR单片机指令系统.PDF

Microsoft Word - sim48x050608_1v151.doc

大 台 北 與 桃 竹 苗 地 區 北 得 拉 曼 巨 木 步 道 新 竹 縣 尖 石 鄉 鎮 西 堡 巨 木 群 步 道 新 竹 縣 尖 石 鄉 鳥 嘴 山 登 山 步 道 苗 栗 縣 泰 安 鄉 加 里 山 登 山 步 道 苗 栗 縣 南 庄 鄉

(Microsoft Word - 3\271\375\246\321\257R.doc)

地 理 志 鏡 止 煞, 來 達 到 安 宅 的 效 果 4. 門 神 符 紙 : 於 門 板 繪 製 門 神, 作 為 宅 第 的 守 護, 民 宅 所 使 用 的 門 神 題 材, 多 為 天 官 賜 福 或 文 武 官 員 符 紙 是 以 畫 了 符 咒 的 紙 懸 掛 室 內, 或 加 框

数据库系统概论

<4D F736F F F696E74202D B5A5C6ACBBFAD3EBB5E7D7D3CFB5CDB3C9E8BCC62E707074>

里 再 说 吓 唬 了 孩 子, 肯 定 方 宁 不 忍 所 以 她 不 死 便 罢, 倘 若 死, 只 有 到 办 公 室 沈 若 鱼 冷 静 得 好 像 在 评 点 某 一 电 视 剧 中 的 女 主 角 你 说 她 是 怎 么 死 的? 先 生 又 感 惊 骇 吃 安 眠 药 沈 若 鱼 成

我眼中的好老师

Microsoft PowerPoint - 微原-第3章3.ppt [兼容模式]

bnb.PDF

目 錄 一 研 討 會 活 動 主 題... 1 二 參 訪 名 單 及 分 房 資 訊... 2 三 參 訪 行 程 表... 3 四 會 議 地 點 及 歡 送 晚 宴 地 點... 6 五 研 討 會 議 程 表... 7 六 接 待 人 員 名 單... 8 七 參 訪 景 點 簡 介...

从 宾 馆 到 又 一 城 是 十 五 分 钟, 从 又 一 城 到 邵 逸 夫 是 十 分 钟, 去 时 一 路 上 坡 很 辛 苦, 回 时 一 路 下 坡 很 轻 松, 很 像 上 小 学 时 的 心 情, 这 是 最 初 几 天 最 深 的 感 受 有 段 时 间 很 少 走 校 内 的 路

合金投资年报正文.PDF


i


育儿故事(八)

Microsoft Word - 8-Bit通用IO型单片机20P02B_V03.docx

数据库系统概论

Microsoft PowerPoint - Ch3-8086CPUæ„⁄令系ç»�(3)-æŁ°æ“®ä¼€é•†æ„⁄令

江西赣南果业股份有限公司

<4D F736F F D20C7B0CBC4D5C2D7F7D2B5CCE22E646F6378>

【第一类】


HS2303-P

Contents 1 深 圳 大 学 经 济 学 院 学 生 代 表 大 会 章 程 2 2 优 秀 毕 业 生 评 选 细 则 7 3 议 事 规 则 8 i

(i) (ii) (iii) 2

2,300 4, %


二零一五年施政報告 - 施政綱領 - 第三章 扶貧及為弱勢社群提供支援

育 部 分 則 由 陳 淑 貞 委 員 及 李 兆 環 委 員 共 同 執 行, 在 此 先 感 謝 各 位 委 員 及 學 者 專 家 之 參 與 二 目 前 評 論 報 告 初 稿 之 架 構 區 分 為 對 政 府 機 關 回 應 意 見 之 觀 察 優 點 及 待 改 進 事 項, 以 及

<4D F736F F D20BACBB0B2C8ABD3EBB7C5C9E4D0D4CEDBC8BEB7C0D6CEA1B0CAAEB6FECEE5A1B1B9E6BBAEBCB C4EAD4B6BEB0C4BFB1EA2E646F63>

附 : 初 中 组 一 等 奖 (31 个 ): 天 河 外 国 语 学 校 中 山 大 学 附 属 中 学 番 禺 区 大 石 富 丽 中 学 广 东 实 验 中 学 附 属 天 河 学 校 花 都 区 实 验 中 学 增 城 区 凤 凰 城 中 英 文 学 校 广 州 市 执 信 中 学 花 都

<4F4BBEFAA576A470BBA15FC160AAED E786C73>

58, ,769 51,911 74,666 35, , , , ,

辽宁铁~1

壹、學校背景

保 险 公 司 金 富 月 盈 两 产 全 品 保 名 险 称 ( 分 红 型 ) 产 分 品 红 类 型 缴 费 年 类 缴 型 缴 10 费 年 期 缴 限 保 险 期 限 ( 年 ) 聚 富 2 号 两 全 保 险 ( 万 能 型 ) 万 能 型 趸 缴 趸 缴 6 年 龙 享 安 康 重 疾

I

海底捞你学不会

YEN/MIAO CHING MS 27FEB DEL HKG

Microsoft Word - 02文本.docx


案件

義 和 團 及 兪 國 聯 軍 之 役 課 題 學 習 指 引 : A. 思 考 課 題 有 人 說, 義 和 團 及 兪 國 聯 軍 之 役 是 中 國 近 代 史 的 分 水 嶺, 你 同 意 嗎? B. 思 考 方 向 滿 清 政 府 的 管 治 威 信 思 考 是 否 已 不 信 任 滿 清

最新监察执法全书(一百五十五).doc

游戏攻略大全(三十四).doc

掌握健康 掌握人生


草莓实用技术(一)

Microsoft Word - 【襪子流浪記】.docx

最新监察执法全书(十一).doc

Transcription:

M8Rxxx 指令集说明 Version 1.04 2014 年 11 月 上海磐芯电子有限公司 SHANGHAI MASSES ELECTRONIC Co., Ltd. 本公司保留对产品在可靠性, 功能和设计方面的改进作进一步说明的权利 说明文档的更改, 恕不另行通知

修正记录 版本 日期 描述 Ver1.02 2014-5-15 补全指令说明 Ver1.03 2014-10-8 勘误 Ver1.04 2014-11-24 删除 ADCIA 指令 - 2 -

目录 目录... 3 1 M8RXXX 指令集简述... 5 1.1 概述... 5 1.2 符号说明... 5 2 M8RXXX 指令集表... 6 3 M8RXXX 指令说明... 8 ADDAR R,D... 8 ADCAR R,D... 8 SUBAR R,D... 8 SBCAR R,D... 8 SUBRA R,D... 8 SBCRA R,D... 8 ANDAR R,D... 9 ORAR R,D... 9 XORAR R,D... 9 COMR R,D... 9 MOVR R,D... 9 MOVAR R... 9 CLRR R... 10 SWAPR R,D... 10 RLR R,D... 10 RLRNC R,D... 10 RRR R,D... 10 RRRNC R,D... 10 DECR R,D... 11 DJZR R,D... 11 INCR R,D... 11 JZR R,D... 11 JNZR R,D... 11 DJNZR R,D... 11 JCMPAR R... 12 JNCMPAR R... 12 JGAR R... 12 JLAR R... 12 XCHAR R... 12 JBTS0 R,B... 12 JBTS1 R,B... 13 BCLR R,B... 13 BSET R,B... 13 ADDIA I... 13-3 -

SUBIA I... 13 SBCIA I... 13 SUBAI I... 14 SBCAI I... 14 ANDIA I... 14 ORIA I... 14 XORIA I... 14 MOVIA I... 14 RETIA I... 14 JCMPAI I... 14 JNCMPAI I... 15 RLA... 15 RLANC... 15 RRA... 15 RRANC... 15 DECA... 15 DJZA... 15 INCA... 15 JZA... 16 RETIE... 16 RETURN... 16 NOP... 16 RDT... 16 DAA... 16 DSA... 16 PUSH... 16 POP... 17 CLRWDT... 17 CALL I... 17 GOTO I... 17-4 -

1 M8Rxxx 指令集简述 1.1 概述 M8Rxxx 系列指令集是一种精简指令集 (RISC), 指令宽度为 16 位, 由操作码和 0~2 个操作数组成 指令按照功能可分为 5 类, 即字节操作指令 位操作指令 立即数指令 分支指令 特殊控制指令 每个指令周期由 4 个振荡周期组成, 除非条件测试结果为真或指令执行改变了程序计数器的值, 否则执行所有的指令都只需要一个指令周期 对于上诉两种特征情况, 指令执行需要两个指令周期 任何一条指定文件寄存器作为指令一部分的指令都进行读 - 修改 - 写操作 读寄存器 修改数据并根据指令或目标标识符 d 存储结果 即使是写寄存器的指令也将先对改寄存器进行读操作 1.2 符号说明 符号 范围 说明 符号 范围 说明 R/r 0-0x1ff 寄存器地址 C - 进位标志 A - ACC 寄存器 DC - 半进位标志 B/b 0-7 位地址 Z - 零标志 I/i 0-0xff 立即数 d 0-1 目的操作数定义 K/k 0-0x1fff 标号 GIE - 总中断使能位 TOS - 栈顶 stkp - 堆栈指针 PC - PC 指针 - 5 -

2 M8Rxxx 指令集表 指令集表中,d=1, 目的操作数为 R;d=0, 目的操作数为 A 指令类型助记符指令说明周期数影响标志位备注 寄存器操作指令 位操作指令 ADDAR R,d R+A d 1 Z,DC,C ADCAR R,d R+A+C d 1 Z,DC,C SUBAR R,d A-R d 1 Z,DC,C SBCAR R,d A-R- C d 1 Z,DC,C SUBRA R,d R-A d 1 Z,DC,C SBCRA R,d R-A- C d 1 Z,DC,C ANDAR R,d R&A d 1 Z ORAR R,d R A d 1 Z XORAR R,d R^A d 1 Z COMR R,d R d 1 Z MOVR R,d R d 1 Z MOVAR R A R 1 - CLRR R 0 R 1 Z SWAPR R,d R 半字节交换 d 1 - RLR R,d R[7] C,{R[6:0],C} d 1 C RLRNC R,d {R[6:0],0} d 1 - RRR R,d R[0] C,{C,R[7:1]} d 1 C RRRNC R,d {0,R[7:1]} d 1 - DECR R,d R-1 d 1 Z DJZR R,d R-1 d,skip if 0 1(2) - INCR R,d R+1 d 1 Z JZR R,d R+1 d,skip if 0 1(2) - JNZR R,d R+1 d, SKIP if!0 1(2) Z,C (*1) DJNZR R,d R-1 d, SKIP if!0 1(2) Z,C (*1) JCMPAR R SKIP if A=R 1(2) Z,C (*1) JNCMPAR R SKIP if A R 1(2) Z,C (*1) JGAR R SKIP if A R 1(2) Z,C (*1) JLAR R SKIP if A<R 1(2) Z,C (*1) XCHAR R A R 1(2) Z (*1) JBTS0 R,b SKIP if R[b]=0 1(2) - JBTS1 R,b SKIP if R[b]=1 1(2) - BCLR R,b 0 R[b] 1 - BSET R,b 1 R[b] 1 - - 6 -

指令类型助记符指令说明周期数影响标志位备注 立即数操作指令 特殊操作指令 分支指令 ADDIA I I+A A 1 Z,DC,C SUBIA I I-A A 1 Z,DC,C SBCIA I I-A- C A 1 Z,DC,C SUBAI I A-I A 1 Z,DC,C SBCAI I A-I- C A 1 Z,DC,C ANDIA I A&I A 1 Z ORIA I A I A 1 Z XORIA I A^I A 1 Z MOVIA I I A 1 - RETIA I Stack PC, I A 2 - JCMPAI I SKIP if A=I 1(2) Z,C (*1) JNCMPAI I SKIP if A I 1(2) Z,C (*1) RLA A[7] C,{A[6:0],C} A 1 C RLANC {A[6:0],0} A 1 - RRA A[0] C,{C,A[7:1]} A 1 C RRANC {0,A[7:1]} A 1 - DECA A-1 A 1 Z DJZA A-1 A, SKIP if 0 1(2) - INCA A+1 A 1 Z JZA A+1 A, SKIP if 0 1(2) - RETIE Stack PC, 1 GIE 2 - RETURN Stack PC 2 - NOP None Operation 1 - RDT ROM[{fsr1,fsr0}] {HBUF, A} 2 - DAA 加法后十进制调整 1 DC,C DSA 减法后十进制调整 1 DC,C PUSH A,STATUS 压栈 1 - (*1)(*2) POP A,STATUS 出栈 1 Z,DC,C (*1)(*2) CLRWDT 清除 WDT 寄存器 1 PD,TO (*1) CALL I I PC, PC Stack 2 - GOTO I I PC 2 - 备注 : (*1) 此指令 M8R82 不支持 (*2) 此指令 M8R62/621/622 不支持 - 7 -

3 M8Rxxx 指令说明 ADDAR R,d 说明 : R 与 A 相加 操作 : (R) + (A) ( 目标寄存器 ) 说明 : 将寄存器 R 的内容与 A 寄存器相加. SBCAR R,d 说明 : A 带借位减 R 操作 : (A) - (R) ( C ) ( 目标寄存器 ) 说明 : 按二进制补码方式, 用 A 寄存器内容 减去寄存器 R 的内容. 如果 C = 0, 说明前次运算有借位, 则 需再减去 1; 否则不需要再减. ADCAR R,d 说明 : R 与 A 带进位相加 操作 : (R) + (A) + (C) ( 目标寄存器 ) 说明 : 将寄存器 R 的内容与 A 寄存器及进位值相加. SUBRA R,d 说明 : R 减去 A 操作 : (R) - (A) ( 目标寄存器 ) 说明 : 按二进制补码方式, 用寄存器 R 内容减去 A 寄存器的内容, SUBAR R,d 说明 : A 减去 R 操作 : (A) - (R) ( 目标寄存器 ) 说明 : 按二进制补码方式, 用 A 寄存器内容减去寄存器 R 的内容, SBCRA R,d 说明 : R 带借位减 A 操作 : (R) - (A) ( C ) ( 目标寄存器 ) 说明 : 按二进制补码方式, 用寄存器 R 内容 减去 A 寄存器的内容. 如果 C = 0, 说明前次运算有借位, 则 需再减去 1; 否则不需要再减. - 8 -

ANDAR R,d 说明 : R 与 A 做逻辑与运算 操作 : (R) AND (A) ( 目标寄存器 ) 说明 : 将寄存器 R 的内容与 A 寄存器进行逻辑与运算. COMR R,d 说明 : 对 R 取反 操作 : ( R ) ( 目标寄存器 ) 说明 : 将寄存器 R 的内容取反. ORAR R,d 说明 : R 与 A 做逻辑或运算 操作 : (R) OR (A) ( 目标寄存器 ) 说明 : 将寄存器 R 的内容与 A 寄存器进行 逻辑或运算. MOVR R,d 说明 : 传送 R 操作 : (R) ( 目标寄存器 ) 说明 : 根据 d 的值将寄存器 R 的内容传送到目标寄存器. 如果 d 为 0, 传送到 A 寄存器. 如果 d 为 1, 传送到寄存器 R 本身. 因为状态标志位 Z 会受影响, 所以可用 d = 1 对寄存器 R 进行测试. XORAR R,d 说明 : R 与 A 做逻辑异或运算 操作 : (R) XOR (A) ( 目标寄存器 ) 说明 : 将寄存器 R 的内容与 A 寄存器进行逻辑异或运算. MOVAR R 说明 : 将 A 的内容传送到 R 操作 : (A) (R) 受影响的状态位 : 无说明 : 将 A 寄存器的内容传送到寄存器 R. - 9 -

CLRR R 说明 : 将 R 清零 操作 : 0x00 (R) 1 Z 说明 : 寄存器 R 的内容清零 Z 位置 1 RLRNC R,d 说明 : R 不带进位左移 操作 : ({R[6:0],0}) ( 目标寄存器 ) 受影响的状态位 : 无说明 : 将寄存器 R 的内容左移 1 位, 最低位补 0 SWAPR R,d 说明 : 将 R 的高半字节和低半字节交换 操作 : (R[3:0]) ( 目标寄存器 [7:4]) (R[7:4]) ( 目标寄存器 [3:0]) 受影响的状态位 : 无说明 : 寄存器 R 内容的高半字节和低半字节相互交换, RRR R,d 说明 : R 带进位循环右移 操作 : (R[0]) (C) ({(C), R[7:1]}) ( 目标寄存器 ) 受影响的状态位 :C 说明 : 将寄存器 R 的内容连同进位值一起循环右移 1 位 RLR R,d 说明 : R 带进位循环左移 操作 : (R[7]) (C) ({R[6:0],(C)}) ( 目标寄存器 ) 受影响的状态位 :C 说明 : 将寄存器 R 的内容连同进位值一起循环左移 1 位 RRRNC R,d 说明 : R 不带进位右移 操作 : ({0, R[7:1]}) ( 目标寄存器 ) 受影响的状态位 : 无说明 : 将寄存器 R 的内容右移 1 位, 最高位补 0-10 -

DECR R,d 说明 : R 递减 1 操作 : (R) - 1 ( 目标寄存器 ) 说明 : 将寄存器 R 的内容递减 1. JZR R,d 说明 : R 递增 1, 为 0 则跳过 操作 : (R) + 1 ( 目标寄存器 ) 如果结果 =0 则跳过受影响的状态位 : 无说明 : 将寄存器 R 的内容递增 1. 如果结果不为 0, 则执行下一条指令如果结果为 0, 则代为执行 NOP 指令 DJZR R,d 说明 : R 递减 1, 为 0 则跳过 操作 : (R) - 1 ( 目标寄存器 ) 如果结果 =0 则跳过受影响的状态位 : 无说明 : 将寄存器 R 的内容递减 1. 如果结果不为 0, 则执行下一条指令如果结果为 0, 则代为执行 NOP 指令 JNZR R,d 说明 : R 递增 1, 非 0 则跳过 操作 : (R) + 1 ( 目标寄存器 ) 如果结果 0 则跳过, C 说明 : 将寄存器 R 的内容递增 1. 如果结果不为 0, 则代为执行 NOP 指令如果结果为 0, 则执行下一条指令 INCR R,d 说明 : R 递增 1 操作 : (R) + 1 ( 目标寄存器 ) 说明 : 将寄存器 R 的内容递增 1. DJNZR R,d 说明 : R 递减 1, 非 0 则跳过 操作 : (R) - 1 ( 目标寄存器 ) 如果结果 0 则跳过, C 说明 : 将寄存器 R 的内容递减 1. 如果结果不为 0, 则代为执行 NOP 指令如果结果为 0, 则执行下一条指令 - 11 -

JCMPAR R 说明 : 比较 A 与 R, 相等则跳过 JLAR R 说明 : 比较 A 与 R, A 小于 R 则跳过 操作 : (A) Vs (R) 如果 A = R 则跳过, C 说明 : 将 A 寄存器的内容与寄存器 R 比较. 如果 A = R, 则代为执行 NOP 指令如果 A R, 则执行下一条指令 操作 : (A) Vs (R) 如果 A < R 则跳过, C 说明 : 将 A 寄存器的内容与寄存器 R 比较. 如果 A R, 则执行下一条指令如果 A < R, 则代为执行 NOP 指令 JNCMPAR R 说明 : 比较 A 与 R, 不等则跳过 XCHAR R 说明 : A 与 R 交换 操作 : (A) Vs (R) 如果 A R 则跳过, C 说明 : 将 A 寄存器的内容与寄存器 R 比较. 如果 A = R, 则执行下一条指令如果 A R, 则代为执行 NOP 指令 操作 : (R) (A) (A) (R) 说明 : 将 A 寄存器的内容与寄存器 R 交换. JGAR R 说明 : 比较 A 与 R, A 大于等于 R 则跳过 操作 : (A) Vs (R) 如果 A R 则跳过, C 说明 : 将 A 寄存器的内容与寄存器 R 比较. 如果 A R, 则代为执行 NOP 指令如果 A < R, 则执行下一条指令 JBTS0 R,b 说明 : 测试 R 的指定位, 为 0 则跳过 0 b 0x7 操作 : 如果 (R[b]) = 0 则跳过受影响的状态位 : 无说明 : 如果寄存器 R 的位 b = 1, 则执行下一条指令如果寄存器 R 的位 b = 0, 则代为执行 NOP 指令 - 12 -

JBTS1 R,b 说明 : 测试 R 的指定位, 为 1 则跳过 0 b 0x7 操作 : 如果 (R[b]) = 1 则跳过受影响的状态位 : 无说明 : 如果寄存器 R 的位 b = 1, 则代为执行 NOP 指令如果寄存器 R 的位 b = 0, 则执行下一条指令 ADDIA I 说明 : I 与 A 相加操作数 :0 I 0xff 操作 : (I) + (A) (A) 说明 : 将立即数 I 与 A 寄存器相加. 结果存入 A 寄存器. BCLR R,b 说明 : 将 R 的指定位清零 0 b 0x7 操作 : 0 (R[b]) 受影响的状态位 : 无说明 : 将寄存器 R 的位 b 清零 SUBIA I 说明 : I 减去 A 操作数 :0 I 0xff 操作 : (I) - (A) (A) 说明 : 按二进制补码方式, 用立即数 I 减去 A 寄存器, 结果存入 A 寄存器. BSET R,b 说明 : 将 R 的指定位置 1 0 b 0x7 操作 : 1 (R[b]) 受影响的状态位 : 无说明 : 将寄存器 R 的位 b 置 1 SBCIA I 说明 : I 带借位减 A 操作数 :0 I 0xff 操作 : (I) - (A) ( C ) (A) 说明 : 按二进制补码方式, 用立即数 I 减去 A 寄存器的内容. 如果 C = 0, 说明前次运算有借位, 则 需再减去 1; 否则不需要再减. 结果存入 A 寄存器. - 13 -

SUBAI I 说明 : A 减去 I 操作数 :0 I 0xff 操作 : (A) - (I) (A) 说明 : 按二进制补码方式, 用 A 寄存器内容减去立即数 I, 结果存入 A 寄存器. XORIA I 说明 : A 与 I 做逻辑异或运算 操作数 :0 I 0xff 操作 : (A) XOR (I) (A) 说明 : 将 A 寄存器的内容与立即数 I 进行 逻辑异或运算. 结果存入 A 寄存器. SBCAI I 说明 : A 带借位减 I 操作数 :0 I 0xff 操作 : (A) - (I) ( C ) (A) 说明 : 按二进制补码方式, 用 A 寄存器内容 减去立即数 I. 如果 C = 0, 说明前次运算有借位, 则 需再减去 1; 否则不需要再减. 结果存入 A 寄存器. MOVIA I 说明 : 将 I 传送到 A 操作数 :0 I 0xff 操作 : (I) (A) 受影响的状态位 : 无说明 : 将立即数 I 传送到 A 寄存器. ANDIA I 说明 : A 与 I 做逻辑与运算操作数 :0 I 0xff 操作 : (A) AND (I) (A) 说明 : 将 A 寄存器的内容与立即数 I 进行逻辑与运算. 结果存入 A 寄存器. RETIA I 说明 : 返回并将立即数传送到 A 操作数 :0 I 0xff 操作 : (I) (A) Stack PC 受影响的状态位 : 无 说明 : 将立即数 I 传送到 A 寄存器. 将栈顶的返回地址值传送到 程序计数器. ORIA I 说明 : A 与 I 做逻辑或运算 操作数 :0 I 0xff 操作 : (A) OR (I) (A) 说明 : 将 A 寄存器的内容与立即数 I 进行 逻辑或运算. 结果存入 A 寄存器. JCMPAI I 说明 : 比较 A 与 I, 相等则跳过操作数 :0 I 0xff 操作 : (A) Vs (I) 如果 A = I 则跳过, C 说明 : 将 A 寄存器的内容与立即数 I 比较. 如果 A = I, 则代为执行 NOP 指令如果 A I, 则执行下一条指令 - 14 -

JNCMPAI I 说明 : 比较 A 与 I, 不等则跳过操作数 :0 I 0xff 操作 : (A) Vs (I) 如果 A I 则跳过, C 说明 : 将 A 寄存器的内容与立即数 I 比较. 如果 A = I, 则执行下一条指令如果 A I, 则代为执行 NOP 指令 RRANC 说明 : A 不带进位右移操作数 : 无操作 : ({0, A[7:1]}) (A) 受影响的状态位 : 无说明 : 将 A 寄存器的内容右移 1 位, 最高位补 0. 结果存入 A 寄存器. RLA 说明 : A 带进位循环左移操作数 : 无操作 : (A[7]) (C) ({A[6:0],(C)}) (A) 受影响的状态位 :C 说明 : 将 A 寄存器的内容连同进位值一起循环左移 1 位, 结果存入 A 寄存器. DECA 说明 : A 递减 1 操作数 : 无操作 : (A) - 1 (A) 说明 : 将 A 寄存器的内容递减 1. 结果存入 A 寄存器. RLANC 说明 : A 不带进位左移操作数 : 无操作 : ({A[6:0],0}) (A) 受影响的状态位 : 无说明 : 将寄存器 A 的内容左移 1 位, 最低位补 0. 结果存入 A 寄存器. DJZA 说明 : A 递减 1, 为 0 则跳过操作数 : 无操作 : (A) - 1 (A) 如果结果 =0 则跳过受影响的状态位 : 无说明 : 将 A 寄存器的内容递减 1. 结果存入 A 寄存器. 如果结果不为 0, 则执行下一条指令如果结果为 0, 则代为执行 NOP 指令 RRA 说明 : A 带进位循环右移操作数 : 无操作 : (A[0]) (C) ({(C), A[7:1]}) (A) 受影响的状态位 :C 说明 : 将 A 寄存器的内容连同进位值一起循环右移 1 位. 结果存入 A 寄存器. INCA 说明 : A 递增 1 操作数 : 无操作 : (A) + 1 (A) 说明 : 将 A 寄存器的内容递增 1. 结果存入 A 寄存器. - 15 -

JZA 说明 : A 递增 1, 为 0 则跳过操作数 : 无操作 : (A) + 1 (A) 如果结果 =0 则跳过受影响的状态位 : 无说明 : 将 A 寄存器的内容递增 1. 结果存入 A 寄存器. 如果结果不为 0, 则执行下一条指令如果结果为 0, 则代为执行 NOP 指令 RDT 说明 : 读表操作数 : 无操作 : ROM[{fsr1,fsr0}] 高 8 位 HBUF ROM[{fsr1,fsr0}] 低 8 位 A 受影响的状态位 : 无说明 : 进行读表操作, 将 {fsr1,fsr0} 所指向的 ROM Code 高 8 位传送到寄存器 HBUF, 低 8 位传送到 A 寄存器. RETIE 说明 : 从中断返回 操作数 : 无 操作 : 1 GIE Stack PC 受影响的状态位 : 无 说明 : 全局中断允许位 GIE 置 1. 将栈顶的返回地址值传送到 程序计数器. DAA 说明 : 加法后十进制调整操作数 : 无操作 : (A) 加法十进制调整 (A) 受影响的状态位 :DC, C 说明 : 将 A 寄存器的内容进行加法十进制 调整, 结果存入 A 寄存器. RETURN 说明 : 从子程序返回操作数 : 无操作 : Stack PC 受影响的状态位 : 无说明 : 从子程序返回, 执行出栈动作, 将栈顶的返回地址值传送到程序计数器. DSA 说明 : 减法后十进制调整操作数 : 无操作 : (A) 减法十进制调整 (A) 受影响的状态位 :DC, C 说明 : 将 A 寄存器的内容进行减法十进制 调整, 结果存入 A 寄存器. NOP 说明 : 空操作操作数 : 无操作 : 空操作受影响的状态位 : 无说明 : 不执行任何操作. PUSH 说明 : 进栈操作数 : 无操作 : PC Stack 保存 A, STATUS 受影响的状态位 : 无说明 : 进栈指令, 程序计数器值存入栈顶, 保存 A 寄存器和 STATUS 寄存器值. - 16 -

POP 说明 : 出栈操作数 : 无操作 : Stack PC 恢复 A, STATUS 说明 : 出栈指令, 将栈顶的返回地址值传送 到程序计数器, 恢复原保存的 A 寄存 器和 STATUS 寄存器值. GOTO I 说明 : 无条件跳转操作数 :0 I 0x3fff 操作 : I PC 受影响的状态位 : 无说明 : 无条件跳转, 将立即数 I 作为地址值传送到程序计数器 CLRWDT 说明 : 清零看门狗计数器 操作数 : 无 操作 : 0x00 WDT 1 TO 1 PD 受影响的状态位 :TO, PD 说明 : 将看门狗计数器清零, 状态位 TO 和 PD 置 1. CALL I 说明 : 调用子程序 操作数 :0 I 0x3fff 操作 : PC Stack I PC 受影响的状态位 : 无 说明 : 调用子程序, 将程序计数器存入栈顶, 将立即数 I 作为地址值传送到程序计 数器 - 17 -