打印
[其它应用]

有没有更详细的关于功能方面的说明

[复制链接]
980|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huanghuac|  楼主 | 2022-10-14 19:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
四位机的扩展指令

使用特权

评论回复
沙发
happy_10| | 2022-10-14 19:50 | 只看该作者

什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
huanghuac|  楼主 | 2022-10-14 19:51 | 只看该作者
或者说和51的差不多什么的

使用特权

评论回复
地板
liuzaiy| | 2022-10-14 19:54 | 只看该作者
4bit mcu的扩展指令你可以参考IDE66的帮助文件

使用特权

评论回复
5
yszong| | 2022-10-14 19:56 | 只看该作者
对,里面的描述比较详细

使用特权

评论回复
6
pengf| | 2022-10-14 19:59 | 只看该作者

arithmetic instruction:
INC Mx                 /*Increase Mx by 1,if Mx>0x7f, one additional RAM is used as temporary RAM*/
DEC Mx                 /*Decrease Mx by 1,if Mx>0x7f, one additional RAM is used as temporary RAM*/
RL Mx, shift         /*Left shift Mx */
RR Mx, shift         /*Right shift Mx */
RLC Mx, shift         /*Left shift with carry */
INV(CPL) Mx         /* Invert Mx, if Mx>0x7f, one additional RAM is used as temporary RAM*/

使用特权

评论回复
7
jiajs| | 2022-10-14 20:01 | 只看该作者

compare/jump instruction:
CJNE Mx1, Mx2, addr         /*Compare, and if Mx1 is not equal to Mx2, jump to addr*/
CJE Mx1, Mx2, addr                 /*Compare, and if Mx1 is equal to Mx2, jump to addr*/
CJLE Mx1, Mx2, addr                 /*Compare, and if Mx1 is less than or equal to Mx2, jump to addr*/
CJGE Mx1, Mx2, addr         /*Compare, and if Mx1 is greater than or equal to Mx2, jump to addr*/
CJL Mx1, Mx2, addr         /*Compare, and if Mx1 is less than Mx2, jump to addr*/
CJG Mx1, Mx2, addr         /*Compare, and if Mx1 is greater than Mx2, jump addr*/
DJNZ Mx, addr                 /*Decrease Mx by 1, and jump to addr if Mx is not equal to 0,if Mx>0x7f, one additional RAM is used as temporary RAM*/
DJZ Mx, addr                 /*Decrease Mx by 1, and jump to addr if Mx is equal to 0,if Mx>0x7f, one additional RAM is used as temporary RAM*/

使用特权

评论回复
8
jiaxw| | 2022-10-14 20:03 | 只看该作者

bit arithmetic instruction:
SETB Mx, bit                 /* Set Mx:bit ,if Mx>0x7f, one additional RAM is used as temporary RAM*/
CLRB Mx, bit                 /* Clear Mx:bit ,if Mx>0x7f, one additional RAM is used as temporary RAM*/
JB Mx, bit, addr                 /* Test and jump, if Mx:bit is 1, then jump to addr*/
JNB Mx, bit, addr         /* Test and jump, if Mx:bit is 0, then jump to addr*/

使用特权

评论回复
9
jiajs| | 2022-10-14 20:05 | 只看该作者

other instruction:
LDR Mx, addr                 /*load the address into the RAM, Mx <- addr[15:12], Mx-1 <- addr[11:8],Mx-2 <- addr[7:4], Mx-3 <- addr[3:0], addr is 16-bit width, if Mx > 0x7F, one additional RAM is used as temporary RAM*/

使用特权

评论回复
10
juventus9554| | 2022-10-14 20:08 | 只看该作者
没明白什么意思

使用特权

评论回复
11
huanghuac|  楼主 | 2022-10-14 20:09 | 只看该作者
多谢大家讨论这么多哈,呵呵

使用特权

评论回复
12
tpgf| | 2022-11-4 08:52 | 只看该作者
单片机中的位数,其实是指的  字长  ,也就是一次运算中参与运算的数据长度,位 是指二进制位,所以位数至少是2,位数越高,一次运算的数据越大,处理速度越快。更高位数只能是基础位数的倍数,也就是2-4-8-16-32,不能是奇数。

使用特权

评论回复
13
nawu| | 2022-11-4 09:09 | 只看该作者
按微处理器(CPU)字长分类按微处理器字长来分,微型计算机一般分为4位、8位、16位、32位和64位机几种。 4位微型计算机;用4位字长的微处理器为CPU,其数据总线宽度为4位,一个字节数据要分两次来传送或处理。

使用特权

评论回复
14
aoyi| | 2022-11-4 10:08 | 只看该作者
三地址: 地址码占12位,操作码占4位,共16种编码,用去11个,还剩5个。
二地址: 地址码占8位,操作码占8位,其中高四位有5中编码,低四位有16中编码,共有5*16=80种编码。所以还剩80-72=8个编码没有用。
一地址:地址码4位,操作码12尾,高八位8种编码可以使用,低四位有16种编码。一地址需要4*16=64个编码。因此高12位还剩下4*16=64种编码。
零地址:操作码16位,高12位64种编码,低地址16为,所以还有64*16=1024种编码供0地址使用。

使用特权

评论回复
15
zljiu| | 2022-11-4 10:31 | 只看该作者
符号拓展指令,使用符号位拓展数据类型。

cbw 使用al的最高位拓展ah的所有位,(最高位即为符号位)

cwd使用ax的最高位拓展dx的所有位

cdq使用eax的最高位拓展edx的所有位

cwde使用ax的最高位拓展eax高16位的所有位

cdqe使用eax的最高位拓展rax高32位的所有位

使用特权

评论回复
16
gwsan| | 2022-11-4 10:41 | 只看该作者
貌似扩展指令里边只包含符号扩展指令啊

使用特权

评论回复
17
tfqi| | 2022-11-4 11:20 | 只看该作者
跳转指令那方面没有相关的扩展指令吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

772

主题

8473

帖子

6

粉丝