恭喜,你发布的帖子
发布于 2021-05-07 15:05:22
12楼
这个基本上懂了 大概就是: (举例:起始字节QB0 ; 偏移地址LW1=16#0103,也就是Q1.3)
第一步:指针化起始字节(这里是QB0--P0);
举例中起始字节QB0
第二步:指针化偏移地址(这里是LB1--P1_D)+指针化的起始字节(P0)=指针目标字节(P1); 举例中偏移地址是1+起始字节0(P0)=指针目标字节1(P1)也就是QB1
第三步:将对应的QB字节(P1)传送到缓存字节中Out_B(QB1的缓存区)中;
举例中Out_B (QB1的缓存区)=0000 0000 举例要移动的位为红色,第3位
第四步:将要操作的位(也就是LB2=3)做为移位的位数移至最低位:
举例中Out_B (QB1的缓存区)=0000 0000
第五步: 将缓存区最低位置1:
举例中Out_B (QB1的缓存区)=0000 0001
第六步: 将置1的最低位移按照LB2回至开始的位置;
举例中Out_B (QB1的缓存区)=0000 1000
第7步: 将Out_B(QB1的缓存区) 映射到QB1(实际地址)
举例中Out_B (QB1的缓存区)=0000 1000 = QB1=0000 1000。
这样理解对吗?
请填写推广理由:
分享
只看
楼主