CH559指令周期.doc

Similar documents

微處理機

DPJJX1.DOC

HD61202 HD HD61203 HD61202, HY HY HD61202 HD61202 HD61203 HD =4096 RAMRAM LCD 2HD HD HD /32--

<4D F736F F D203130B5A5C6ACBBFACAB5D1E9D6B8B5BCCAE92E646F63>

AN-8203 FCM8531 用户手册

untitled

Microsoft PowerPoint - chap4.ppt

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

Microsoft PowerPoint - chap5.ppt

» n ¹ú KS0108 x ÍÍÙ q n KS0108 KS KS0107 KS0108 KS *32 128*64 192*64 KS0108 KS0108 KS0107 KS =4096 RAM RAM LCD 2 KS

Microsoft Word - Ö¸Á.doc

Ⅰ Ⅱ 2 Ⅲ 2 Ⅳ 耀

CA24064B LED LED LED EL EL CCFL EL CCF /

Microsoft PowerPoint - chap2.ppt

µPSD3000 系列

学习MSP430单片机推荐参考书

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

untitled

Microsoft Word - 新1-3.doc

PowerPoint 簡報

Microsoft Word - P3.doc

??????????????????

微處理機期末專題

1 TPIS TPIS 2 2

单片机学习教程

呕血推荐51程序库,希望大家能资源共享

<4D F736F F D20B3E6B4B9A4F930365F32A443AC71C5E3A5DCBEB9B1B1A8EE2E646F63>

12232A LED LED LED EL EL CCFL EL CCF

目 录

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

專題最終版.doc

Microsoft Word - 專題封面.doc

内容简介 本书以 Proteus 为仿真软件, 以汇编语言和 C 语言为编程语言, 结合趣味应用实例, 系统介绍 MCS-51 单片机的组织结构 工作原理 指令系统 程序设计 中断 定时 / 计数器 串行通信 系统扩展 接口技术 应用系统设计等内容 每章的例题 习题都用 Proteus 仿真实现,

TSINGTEK DISPLAY CO.,LTD LCD CONTROLLER & DRIVER ST7920 OR EQUIVALENT (f) 639 2A f B1

Microsoft Word - 第1章 MCS-51单片机概述.docx

Microsoft Word - em78 sub program.doc

() () () () () () () () DDRAM () II

第5章:汇编语言程序设计

dfgdafhdafhdafhdafh

1.1 ML_ONOFF = 1 Q 3 Q 8 C 0.3V M 2 L 1 ML_ONOFF = 0 Q 3 Q 8 C 1. + R31 VCC R21 10K ML_ONOFF R15 0:off 1:on 1K Green Light VCC=5V L1 Q VDD=12V C

Microsoft Word - IRFWX_A051_C_SyncMOS_with_STC_APN_SC_.doc

Microsoft Word - FM12232C.doc


Microsoft Word - ISSFA-0134_A_AP_User-definedDownload_SC_.doc

2 Keil µ vision 2.1 1) Keil µ vision2 V2.34 µ vision3 2) Sino_Keil.exe Keil c:\keil\ 3) JET51 USB PC C:\Keil\ USB PC 4) S-L

§4 数控系统

Microsoft PowerPoint - chap7.ppt

Microsoft Word - 透析8051之迴圈控制方法.doc

,768 32,767 32K JMP Jnnn (386+) LOOP CALL [Label:] JMP short/near/far address L10: jmp jmp L20: L10 L20

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

电 阻 应 变 式 传 感 器 是 将 被 测 量 的 力, 通 过 它 产 生 的 金 属 弹 性 变 形 转 换 成 电 阻 变 化 的 元 件 由 电 阻 应 变 片 和 测 量 线 路 两 部 分 组 成 电 阻 应 变 片 产 生 的 误 差, 主 要 来 源 于 温 度 的 影 响, 本

Microsoft PowerPoint - chap12.ppt

Microsoft PowerPoint - chap3.ppt

W77E58中文手册

杨欣王玉凤刘湘黔编著清华大学出版社 2008 年 1 月 ISBN 单片机应用从零开始 8051Microcontroller: An Applications Based Introduction 第 1 章 身边的单片机 欢迎访问电路飞翔网

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

Microsoft Word - FG12232A.doc

逢 甲 大 學

AT89C2051中文资料.doc

Microsoft Word - ~ doc

Ps22Pdf

AVR单片机指令系统.PDF

<4D F736F F D20B5A5C6ACBBFAD4ADC0EDD3EBD3A6D3C3BCB B3CCD0F2C9E8BCC65FB5DA33B0E65F2DD6D5B8E52D4E65772DBFB1CEF3B1ED2DB3F6B0E6C9E72E646F6378>

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

fgfdg

C8051F330/1 ISP FLASH : (024) :

Microsoft PowerPoint - C15_LECTURE_NOTE_15

untitled

1

Microsoft Word - ZX12232B.doc

<4D F736F F D20B5A5C6ACBBFABFD8D6C6B2BDBDF8B5E7BBFA2E646F63>

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


Microsoft Word - FX-VXC256-VER1.0.doc

微型计算机原理及应用试题 机电96

Microsoft Word - FX-T8048C256A.doc

車在走天在看 PC前的三輪車日記

设计思路 : 以定时器 / 计数器 0 来对脉冲进行计数, 数据用 8279 芯片连接 LED 数码管实现累进显示 程序分为主程序和中断服务程序两部分 主程序主要实现初始化 循环显示 而累计数在中断服务程序中完成 主程序设计 : 1) 实现初始化包括设置堆栈指针 8279 芯片初始化 定时器 / 计

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

5. 方框图 X2 X1 Oscillator Divider Data Select & Buffer DOUT LED R1... R8... Keyboard Matrix & Gate Circuit Data Rom & Registers /24 Counter & 1 of 24 De

<4D F736F F D204C434D78785A4BB1E0B3CCCBB5C3F7CAE92DB7E2C3E6>

Microsoft Word - ISSFA-0237_A_SM39R_series_EEPROM_APN_TC_.doc

8051初学实验教程系列五.doc

51定点/浮点子程序库

概 述

标题

untitled

一:概述

SC91F711v1.2

93C46串行EEPROM数据读写

从 综 对 并 民 并 运 论 摘 要 国 是 个 多 民 族 国 家 族 关 系 问 题 事 关 国 家 前 途 命 运 国 全 面 倡 导 建 设 和 谐 社 会 的 新 时 期 如 何 妥 善 应 对 和 及 时 处 理 好 民 族 关 系 中 出 现 的 新 情 况 新 问 题 断 推 动

Microsoft Word - 第3章.doc

注意 2014 京微雅格 ( 北京 ) 科技有限公司版权所有未经京微雅格 ( 北京 ) 科技有限公司书面许可, 不得以任何形式或方式, 如电子 机械形式, 包括影印 录音或其他数据储存和检索系统形式复制或转移此文档的任何部分, 或将其翻译为其它任何语言或计算机语言 声明本手册中包含的信息已经仔细检查

Microsoft Word - 1-3陳詠琳-近代..

<4D F736F F D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6B0B8C0FDB5BCD1A75FD1F9D5C22E646F63>

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

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

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

<4D F736F F D20B5DA33D5C D A3A84CA3A9B5C4D6B8C1EECFB5CDB32E646F6378>

Transcription:

CH55X 汇编指令周期表 CH55X 汇编指令概述 : 型号包含 : a. 指令单周期型号 :CH557 CH558 CH559; b. 指令 4 周期型号 :CH551 CH552 CH553 CH554; c. 非跳转指令的指令周期数与指令字节数相同 ; d. 跳转指令含 MOVC/RET/CALL 通常比字节数多若干个周期 ; e.movc 指令多 4 或 5 个周期 ( 下条指令地址为奇数时多 5 个周期 ); f.ret/reti 指令多 3 或 4 个周期 ( 返回地址为奇数时多 4 个周期 ); g. 其余指令多 2 或 3 个周期 ( 目标地址是奇数时多 3 个周期 ); h. 条件跳转指令如果未发生跳转则周期数与指令字节数相同 ; 注 : 以上周期是指当前 CH55X 的系统主频的倒数 类别 指令格式 功能描述 指令指令字节周期 传送 MOV A, Rn (Rn) (A)Rn 中的内容送到累加器 A 中,Rn=R0-R7 类指 MOV A,data (data) (A) 直接单元地址中的内容送到累加器 A 令 (Ri) (A)Ri 内容指向的地址单元中的内容送到累加 MOV A,@Ri (29 器 A,Ri=R0 或 R1 MOV A,#data #data (A) 立即数送到累加器 A 中 MOV Rn,A (A) (Rn) 累加器 A 中的内容送到寄存器 Rn 中 MOV Rn,data (data) (Rn) 直接寻址单元中的内容送寄存器 MOV Rn,#data #data (Rn) 立即数直接送到寄存器 Rn 中 MOV data,a (A) (data) 累加器 A 中的内容送直接寻址单元 MOV data,rn (Rn) (data) 寄存器中的内容送直接寻址单元 MOV data2,data1 (data1) (data2) 直接寻址单元中的内容 1 送直接寻址单元 2 MOV data,@ri (Rn) (data) 寄存器中的内容送直接寻址单元 MOV data,#data #data (data) 立即数送直接寻址单元 MOV @Ri,A (A) ((Ri)) 累加器 A 中的内容送到以 Ri 中的内容为地址的 RAM 单元 MOV @Ri,data (data) ((Ri)) 直接寻址单元内容送到以 Ri 中的内容为地址的 RAM 单元 MOV @Ri,#data #data ((Ri)) 立即数送到以 Ri 中的内容为地址的 RAM 单元 MOV #datah (DPH),#dataL (DPL)16 位常数的高 8 位送 DPTR,#data16 到 DPH, 低 8 位送到 DPL MOVX A,@DPTR ((DPTR)) (A) 数据指针指向外部 RAM(16 位地址 ) 的内容送到累加器 A MOVX A,@Ri ((Ri)) (A) 寄存器 Ri 指向外部 RAM(8 位地址 ) 的内容送到累加器 A 中 MOVX @DPTR,A (A) ((DPTR)) 累加器中的内容送到数据指针指向外部 RAM(16 位地址 ) MOVX @Ri,A (A) ((Ri)) 累加器中的内容送到寄存器 Ri 指向外

算术运算类指令 (24 部 RAM(8 位地址 ) MOVC A,@A+DPTR ((A))+(DPTR) (A) 表格地址单元中的内容送到累加器 A 中 1 5/6 MOVC A,@A+PC ((PC))+1 (A),((A))+(PC) (A) 表格地址单元中的内容送到累加器 A 中 1 5/6 XCH A,Rn (A) (Rn) 累加器与工作寄存器 Rn 中的内容互换 XCH A,data (data) (A) 累加器 A 的内容与直接寻址单元的内容交换 XCH A,@Ri (A) ((Ri)) 累加器与工作寄存器 Ri 所指的存储单元中的内容互换 XCHD A,@Ri (A3-0) ((Ri)3-0) 累加器与工作寄存器 Ri 所指的存储单元中的内容低半字节互换 SWAP A (A3-0) (A7-4) 累加器中的内容高低半字节互换 PUSH data (SP)+1 (SP),(data) (SP) 堆栈指针首先加 1, 直接寻址单元中的数据送到堆栈指针 SP 所指的单元中 (SP) (data)(sp)-1 (SP), 堆栈指针 SP 所指的单 POP data 元数据送到直接寻址单元中, 堆栈指针 SP 再进行减 1 操作 ADD A,Rn (A)+(Rn) (A) 累加器 A 中的内容与工作寄存器 Rn 中的内容相加, 结果存在 A 中 ADD A,data (A)+(data) (A) 累加器 A 中的内容与直接地址单元中的内容相加, 结果存在 A 中 ADD A,@Ri (A)+((Ri)) (A) 累加器 A 中的内容与工作寄存器 Ri 所指向地址单元中的内容相加, 结果存在 A 中 ADD A,#data (A)+#data (A) 累加器 A 中的内容与立即数 #data 相加, 结果存在 A 中 ADDC A,Rn (A)+Rn+(C) (A) 累加器 A 中的内容与工作寄存器 Rn 中的内容 连同进位位相加, 结果存在 A 中 ADDC A,data (A)+(data)+(C) (A) 累加器 A 中的内容与直接地址单元的内容连同进位位相加, 结果存在 A 中 ADDC A,@Ri (A)+((Ri))+(C) (A) 累加器 A 中的内容与工作寄存器 Ri 指向地址单元中的内容 连同进位位相加, 结 果存在 A 中 ADDC A,#data (A)+#data +(C) (A) 累加器 A 中的内容与立即数连同进位位相加, 结果存在 A 中 INC A (A)+1 (A) 累加器 A 中的内容加 1, 结果存在 A 中 INC Rn (Rn)+1 (Rn) 寄存器 Rn 的内容加 1, 结果送回原地址单元中 INC data (data)+1 (data) 直接地址单元中的内容加 1, 结果送回原地址单元中 INC @Ri ((Ri))+1 ((Ri)) 寄存器的内容指向的地址单元中的内容加 1, 结果送回原地址单元中 INC DPTR (DPTR)+1 (DPTR) 数据指针的内容加 1, 结果送回数据指针中 SUBB A,Rn (A)-(Rn)-(C) (A) 累加器 A 中的内容与工作寄存器

逻辑操作指令 (24 中的内容 连同借位位相减, 结果存在 A 中 SUBB A,data (A)-(data)-(C) (A) 累加器 A 中的内容与直接地址单元中的内容 连同借位位相减, 结果存在 A 中 SUBB A,@Ri (A)-((Ri))-(C) (A) 累加器 A 中的内容与工作寄存器 Ri 指向的地址单元中的内容 连同借位位相减, 结果存在 A 中 SUBB A,#data (A)-#data -(C) (A) 累加器 A 中的内容与立即数 连同借位位相减, 结果存在 A 中 DEC A (A)-1 (A) 累加器 A 中的内容减 1, 结果送回累加器 A 中 DEC Rn (Rn)-1 (Rn) 寄存器 Rn 中的内容减 1, 结果送回寄存器 Rn 中 DEC data (data)-1 (data) 直接地址单元中的内容减 1, 结果送回直接地址单元中 DEC @Ri ((Ri))-1 ((Ri)) 寄存器 Ri 指向的地址单元中的内容减 1, 结果送回原地址单元中 MUL AB (A) (B) (A) 和 (B) 累加器 A 中的内容与寄存器 B 中的内容相乘, 结果存在 A B 中 (A) (B) (A) 和 (B) 累加器 A 中的内容除以寄存器 B DIV AB 中的内容, 所得到的商存在累加器 A, 而余数存在寄 存器 B 中 DA A 累加器进行 10 进制转换 ANL A,Rn ANL A,direct ANL A,@Ri ANL A,#data ANL data,a ANL data,#data ORL A,Rn ORL A,data ORL A,@Ri ORL A,#data ORL data,a 累加器 A 的内容和寄存器 Rn 中的内容执行与逻辑操作, 结果存在累加器 A 中 累加器 A 中的内容和直接地址单元中的内容执行与逻辑操作, 结果存在寄存器 A 中 累加器 A 的内容和工作寄存器 Ri 指向的地址单元中的内容执行与逻辑操作, 结果存在累加器 A 中 累加器 A 的内容和立即数执行与逻辑操作 结果存在累加器 A 中 直接地址单元中的内容和累加器 A 的内容执行与逻辑操作, 结果存在直接地址单元中 直接地址单元中的内容和立即数执行与逻辑操作, 结果存在直接地址单元中 累加器 A 的内容和寄存器 Rn 中的内容执行逻辑或操作, 结果存在累加器 A 中 累加器 A 中的内容和直接地址单元中的内容执行逻辑或操作, 结果存在寄存器 A 中 累加器 A 的内容和工作寄存器 Ri 指向的地址单元中的内容执行逻辑或操作, 结果存在累加器 A 中 累加器 A 的内容和立即数执行逻辑或操作, 结果存在累加器 A 中 直接地址单元中的内容和累加器 A 的内容执行逻辑或操作, 结果存在直接地址单元中 ORL data,#data 直接地址单元中的内容和立即数执行逻辑或操作, 结

控制转移指令 (16 果存在直接地址单元中 XRL A,Rn 累加器 A 的内容和寄存器 Rn 中的内容执行逻辑异或操作, 结果存在累加器 A 中 XRL A,data 累加器 A 中的内容和直接地址单元中的内容执行逻辑异或操作, 结果存在寄存器 A 中 XRL A,@Ri 累加器 A 的内容和工作寄存器 Ri 指向的地址单元中的内容执行逻辑异或操作, 结果存在累加器 A 中 XRL A,#data 累加器 A 的内容和立即数执行逻辑异或操作, 结果存在累加器 A 中 XRL data,a 直接地址单元中的内容和累加器 A 的内容执行逻辑异或操作, 结果存在直接地址单元中 XRL data,#data 直接地址单元中的内容和立即数执行逻辑异或操作, 结果存在直接地址单元中 CLR A 0 (A), 累加器中的内容清 0 CPL A 累加器中的内容按位取反 RL A 累加器 A 中的内容左移一位 RR A 累加器 A 中的内容右移一位 RLC A 累加器 A 中的内容连同进位位 CY 左移一位 RRC A 累加器 A 中的内容连同进位位 CY 右移一位 LJMP addr16 addr16 (PC), 给程序计数器赋予新值 (16 位地址 ) 3 5/6 AJMP addr11 (PC)+2 (PC),addr11 (PC10-0) 程序计数器赋予新值 (11 位地址 ),(PC15-11) 不改变 SJMP rel (PC)+ 2 + rel (PC) 当前程序计数器先加上 2 再加上偏移量给程序计数器赋予新值 JMP @A+DPTR (A)+(DPTR) (PC), 累加器所指向地址单元的值加上数据指针的值给程序计数器赋予新值 1 3/4 JZ rel JNZ rel CJNE A,#data,rel CJNE Rn,#data,rel CJNE @Ri,#data,rel CJNE A,data,rel DJNZ Rn,rel A=0,(PC)+ 2 + rel (PC), 累加器中的内容为 0, 则转移到偏移量所指向的地址, 否则程序往下执行 A 0,(PC)+ 2 + rel (PC), 累加器中的内容不为 0, 则转移到偏移量所指向的地址, 否则程序往下执行 A #data,(pc)+ 3 + rel (PC), 累加器中的内容不 等于立即数, 则转移到偏移量所指向的地址, 否则程 3 4/5 序往下执行 A #data,(pc)+ 3 + rel (PC), 工作寄存器 Rn 中的 内容不等于立即数, 则转移到偏移量所指向的地址, 3 4/5 否则程序往下执行 A #data,(pc)+ 3 + rel (PC), 工作寄存器 Ri 指向 3 4/5 地址单元中的内容不等于立即数, 则转移到偏移量所 指向的地址, 否则程序往下执行 A (data),(pc)+ 3 + rel (PC), 累加器中的内容不 等于直接地址单元的内容, 则转移到偏移量所指向的地址, 否则程序往下执行 3 4/5 (Rn)-1 (Rn),(Rn) 0,(PC)+ 2 + rel (PC) 工作寄 存器 Rn 减 1 不等于 0, 则转移到偏移量所指向的地址, 3 4/5 否则程序往下执行

位操 作指 令 (18 DJNZ data,rel LCALL addr16 ACALL addr11 (Rn)-1 (Rn),(Rn) 0,(PC)+ 2 + rel (PC) 直接地 址单元中的内容减 1 不等于 0, 则转移到偏移量所指 向的地址, 否则程序往下执行 长调用指令, 可在 64kB 空间调用子程序 此时 (PC)+ 3 (PC),(SP)+ 1 (SP),(PC7-0) (SP),(SP)+ 1 (SP),(PC15-8) (SP),addr16 (PC), 即分别从 堆栈中弹出调用子程序时压入的返回地址 绝对调用指令, 可在 2kB 空间调用子程序, 此时 (PC)+ 2 (PC),(SP)+ 1 (SP),(PC7-0) (SP),(SP)+ 1 (SP),(PC15-8) (SP),addr11 (PC10-0) 3 4/5 3 4/5 RET 子程序返回指令 1 4/5 RETI 中断返回指令,RETI 指令不能用 RET 代替 1 4/5 MOV C,bit bit CY, 某位数据送 CY MOV bit,c CY bit,cy 数据送某位 CLR C 0 CY, 清 CY CLR bit 0 bit, 清某一位 SETB C 1 CY, 置位 CY SETB bit 1 bit, 置位某一位 CPL C CY 取反 CPL bit Bit 取反 ANL C,bit CY 和 bit 相与, 结果存放到 CY ANL C,/bit CY 和 bit 的反码相与, 结果存放到 CY ORL C,bit CY 和 bit 相或, 结果存放到 CY ORL C,/bit CY 和 bit 的反码相或, 结果存放到 CY JC rel JNC rel JB bit,rel JNB bit,rel JBC bit,rel NOP (CY)=1 转移,(PC)+2+rel PC, 否则程序往下执行, (PC)+2 PC (CY)=0 转移,(PC)+2+rel PC, 否则程序往下执行, (PC)+2 PC 位状态为 1 转移,(PC)+3+rel PC, 否则程序往下执 行,(PC)+3 PC 位状态为 0 转移,(PC)+3+rel PC, 否则程序往下执 行,(PC)+3 PC 位状态为 1 转移, 并使该位清 0,(PC)+3+rel PC, 否则程序往下执行,(PC)+3 PC 这条指令除了使 PC 加 1, 消耗一个机器周期外, 没有 执行任何操作, 可用于短时间的延时 新增指令 DB #0A5 XRAM 快速复制指令 新增指令使用示例 : ;New Instruction: ;Instruction Code: 0xA5 ;Instruction Cycle: 1 ;Instruction Operation: MOVX @DPTR1,A ;step-1. write ACC @DPTR1 into xdata SRAM embedded chip ;step-2. increase DPTR1

ASM example: INC XBUS_AUX MOV DPTR,#TARGET_ADDR ;DPTR1 DEC XBUS_AUX MOV DPTR,#SOURCE_ADDR ;DPTR0 MOV R7,#xxH LOOP: MOVX A,@DPTR ;DPTR0 INC DPTR ;DPTR0, if need DB 0A5H ;MOVX @DPTR1,A & INC DPTR1 DJNZ R7,LOOP 注 : 标记为灰色, 代表指令字节数不等于执行该指令需要的机器周期 ;