真奇怪了,这样就会影响AC的值吗?

[复制链接]
2754|9
 楼主| mugangzhu 发表于 2010-4-27 15:29 | 显示全部楼层 |阅读模式
SUO:   
        SBIM SUO_2,01H
        LDI TEMP,00H
        SBCM SUO_1,00H        
        ORM SUO_2,00H;;;;这个改成OR  SUO_,00H就好了,用OR和ORM指令怎么会影响累加器AC的值呢???
        BNZ MAIN
        LDI SUO_1,01H
        LDI SUO_2,04H
        EORIM KEY_1,0010B
jessie000 发表于 2010-4-27 15:57 | 显示全部楼层
ORM功能: 将数据存储器(Mx)的内容与累积器(AC)的内容作逻辑OR的运算,结果存回累积器和资料**
     体内
请参考sh66编程手册~
 楼主| mugangzhu 发表于 2010-4-27 16:10 | 显示全部楼层
那OR 和ORM指令怎么会影响到累加器AC的值呢?
 楼主| mugangzhu 发表于 2010-4-27 16:10 | 显示全部楼层
那OR 和ORM指令怎么会影响到累加器AC的值呢?
chenho 发表于 2010-4-27 16:31 | 显示全部楼层
jessie000 发表于 2010-4-27 16:54 | 显示全部楼层
本帖最后由 jessie000 于 2010-4-28 08:46 编辑

不好意思,记错了=。=
指令:OR        功能: 将数据存储器(Mx)的内容与累积器(AC)的内容作逻辑OR的运算,结果存回累积器内
 楼主| mugangzhu 发表于 2010-4-27 17:21 | 显示全部楼层
我看了啊,指令手册中ORM指令也不会影响AC的值啊,但仿真时就是产生了影响啊
bananarer 发表于 2010-4-28 08:37 | 显示全部楼层
OR 是指RAM的值与AC的值或,并且将值送到AC
ORM 是指RAM的值与AC的值或,并且将值送到AC和RAM当中
谁说不影响的。4BIT指令,很多指令都影响AC值
juginhine 发表于 2010-4-28 08:40 | 显示全部楼层
一般操作指令(除跳转和判断等指令)的结果都是在ACC中,只是根据指令判断是否需要传送到对应的寄存器而已。如:
OR指令的结果就在ACC中,但是不传送到寄存器中;
ORM指令的结果在ACC中,同时也传送到对应的寄存器中。
所以在仿真调试的时候,ACC肯定是每执行一条指令就有新的结果了。
如果还有不清楚,请LZ详细参考一下对应的芯片资料和规格书的指令部分。
huwr 发表于 2010-4-28 12:51 | 显示全部楼层
学习了,真复杂啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

70

主题

358

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部