爱技术

 找回密码
 注册会员

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 42098|回复: 24
收起左侧

C166处理器汇编指令

[复制链接]
发表于 2005-11-11 12:30:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册会员 微信登录

x
这是我整理的指令, 有些地方我也搞不懂, 请知道的朋友加上:

ADD          加
ADDB        字节加
ADDC        加带进位
ADDCB        字节加带进位
SUB        减
SUBB        字节减
SUBC        减带进位
SUBCB        字节减带进位
MUL        带符号乘
MULU        无符号乘
DIV        带符号除
DIVL        带符号长除
DIVLU        无符号长除
DIVU        无符号除
CPL        置入正号
CPLB        字节置入正号
NEG        置负
NEGB        字节置负
AND        与
ANDB        字节与
OR        或
ORB        字节或
XOR        与非
XORB        字节与非
BCLR        内存清零
BSET        内存置数
BMOV        内存导入
BMOVN        内存负导入
BAND        内存与
BOR        内存或
BXOR        内存与非
BCMP        内存比较
BFLDH       
BFLDL
CMP        比较
CMPB        字节比较
CMPD1
CMPD2
CMPL1
CMPL2
PRIOR        测定循环次数
SHL        左移
SHR        右移
ROL        反转左边字节
ROR        反转右边字节
ASHR
MOV        取值
MOVB        字节取值
MOVBS        取字节值
MOVBZ        同时置零
JMPA        跳绝对地址
JMPI        回跳
JMPR        跳相对地址
JMPS        跳段地址
JB        有值相对跳
JBC        跳后内存值清零
JNB        无值相对跳
JNBS        无值相对跳并入值
CALLA        绝对地址调用
CALLI        回调
CALLR        相对地址调用
CALLS        段地址调用
PCALL        调用并压栈
TRAP        调用交互值
POP        出栈
PUSH        压栈
SCXT        压栈并置入新值
RET        返回调用
RETS        返回调用
RETP        返回调用并出栈
RETI        返回最上层
SRST        重置系统
IDLE        进入空闲状态
PWRDN        进入最小活动
SRVWDT        监视时钟
DISWDT        取消监视时钟
EINIT        完成标志
ATOMIC        原子次序
EXTR        开始扩展寄存器
EXTP        开始扩展页
EXTPR        开始扩展页及寄存器
EXTS        开始扩展段
EXTSR        开始扩展段及寄存器
NOP        无操作

条件判断
cc_UC        无条件
cc_Z        零
cc_NZ        非零
cc_V        溢出
cc_NV        非溢出
cc_N        负
cc_NN        非负
cc_C        进位
cc_NC        非进位
cc_EQ        相等
cc_NE        不等
cc_ULT        无符号小于
cc_ULE        无符号小于等于
cc_UGE        无符号大于等于
cc_UGT        无符号大于
cc_SLE        小于等于
cc_SGE        大于等于
cc_SGT        大于
cc_NET        不等并且不是最后
以下是引自狼大的修改入门:

    在我们的修改中,见到的大多数指令都很简单,不外乎CALL,MOV,JPR,ADD,SUB等,只需注意一下段内跳转和段间跳转即可。还有EXTP等系列指令,在修改中经常见到。他是临时更换页地址的指令,比如D7 40 34 00,为EXTP #32 #1。#32(临时页地址),#1(有效指令数)。表示下面的1条指令的页地址为32H。还需要注意的是乘和除使用乘法寄存器MD进行操作。比如Mul op1,op2执行的操作时MD=op1*op2。32位寄存器MD的地址是FF0C。MDL是FF0C,而MDH是FF0E。除法时则是先把被除数放入MD。DIV op执行的是(MDL)=(MD)/(op1),(MDH)=(MD)mod(op1。

[ 本帖最后由 wwssff 于 2005-11-11 12:50 编辑 ]

评分

参与人数 1实力分 +2 收起 理由
巴戈 + 2 精品文章

查看全部评分

发表于 2005-11-11 12:31:37 | 显示全部楼层
学习!!!
回复 支持 反对

使用道具 举报

发表于 2005-11-11 12:38:06 | 显示全部楼层
这么好铁,咋不支持呢?
回复 支持 反对

使用道具 举报

发表于 2005-11-11 12:43:47 | 显示全部楼层
也,不错,我喜欢
回复 支持 反对

使用道具 举报

发表于 2005-11-11 13:33:09 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2005-11-11 14:02:03 | 显示全部楼层
虽然很详细,但还是不懂行!

强烈支持
回复 支持 反对

使用道具 举报

发表于 2005-11-11 14:16:23 | 显示全部楼层
顶先~~~~~~~~~~~~~~~·
回复 支持 反对

使用道具 举报

发表于 2005-11-11 14:22:19 | 显示全部楼层
支持..........
回复 支持 反对

使用道具 举报

发表于 2005-11-11 15:18:05 | 显示全部楼层
科普知识 收藏了

回复 支持 反对

使用道具 举报

发表于 2005-11-11 16:46:16 | 显示全部楼层
这样介绍知识类的,推荐加分!鼓励
回复 支持 反对

使用道具 举报

发表于 2005-11-11 18:20:36 | 显示全部楼层
差点露掉,顶一顶
回复 支持 反对

使用道具 举报

发表于 2005-11-11 18:53:26 | 显示全部楼层
不错,正需要这些东西。
回复 支持 反对

使用道具 举报

发表于 2005-11-11 22:05:18 | 显示全部楼层
云河就是棒!
谢谢你无私的奉献!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-11 22:23:26 | 显示全部楼层
谢谢朋友们支持,我也是正在学习中。
回复 支持 反对

使用道具 举报

发表于 2005-11-28 15:47:23 | 显示全部楼层
能把汇编后的HEX对应的写出来就更好了,谢谢楼主。

[ 本帖最后由 beyond 于 2005-11-28 16:17 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-28 17:37:32 | 显示全部楼层
c166有说明书的,论坛FTP找,上面有指令和16进制的对照,不过一条指令对好几个呢,难对照啊。呵呵。
回复 支持 反对

使用道具 举报

发表于 2005-11-28 20:36:36 | 显示全部楼层
6688 是用这些指令 编程吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-29 02:09:24 | 显示全部楼层
对于我们来说只能用这些,开发商是用高级语言编的,比我们难度小多了。
回复 支持 反对

使用道具 举报

发表于 2005-11-29 08:29:32 | 显示全部楼层
顶!
不过,这是干什么用的?
回复 支持 反对

使用道具 举报

发表于 2005-11-29 08:37:30 | 显示全部楼层
做补丁用的。。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员 微信登录

本版积分规则

小黑屋|Archiver|手机版|爱技术 ( 沪ICP备08115260号-3 )

GMT+8, 2025-7-27 07:33

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表