adject 发表于 2020-6-30 21:44 位寻址是51特有的???那 ARM岂不是更不好用 |
cjjdemon 发表于 2020-6-30 16:34 字节赋值和位赋值用怎样的指令呢 |
寻址方式不同,位寻址是51特有的,由内部的布尔处理来完成的 |
没有人规定地址不能相同呀!你认为地址不能用相同名称的理由是什么呢? 1:SBUF这个寄存器的地址是99H,也就是说99H用了SBUF这个名称而已,而99H在8051中实际的物理空间一共有三个:两个是SBUF,前面的文字已经说明白了:读SBUF就是读取接收到的数据,写入SBUF就是发送数据,意思就是这个字面上的意思,没有其它意思了 2:还有一个地址也是99H,那就RAM上的99H,而且,在RAM中,80H-FFH的地址是和特殊寄存器地址是一样的,也就是说,在8051中,有两个80H-FFH的空间,区分它们的方法是寻址方式,不同的寻址对应不同的空间 3:你估计是看不明白我说的东西的,单片机这玩意只能一步一步来,你想先看完整套的数据手册,等到弄明白了再编程,这会浪费很多时间 |
没有重叠呀,字节地址98H,从98H到9FH这8个位,就是这个字节的8位地址呀。 如果你选择直接整个寄存器赋值,就是对98H赋值。如果是选择对某一位赋值,就是选择98H到9FH之间的某一位就行了。 |