So these are my findings.
Each block was executed 500 times in a 315F-2PN/DP CPU 315-2FH13 0AB0
No bits First bit true Last bit true
FC44 ~19ms ~24ms ~32ms
FC45 ~33ms ~32ms ~44ms
FC99 ~525ms ~18ms ~524ms
FC100 ~78ms ~19ms ~109ms
FC101 ~30ms ~26ms ~57ms
FC102 ~30ms ~20ms ~33ms
FC044 L D[AR2,P#0.0]'s block from previous post
FC045 Same as FC44 using any pointer instead
FC099 Looping bit by bit
FC100 Loop byte by byte then bit by bit
FC101 Loop dword then word then byte then rotate bits
FC102 Loop dword then convert to float
Each block was executed 500 times in a 315F-2PN/DP CPU 315-2FH13 0AB0
No bits First bit true Last bit true
FC44 ~19ms ~24ms ~32ms
FC45 ~33ms ~32ms ~44ms
FC99 ~525ms ~18ms ~524ms
FC100 ~78ms ~19ms ~109ms
FC101 ~30ms ~26ms ~57ms
FC102 ~30ms ~20ms ~33ms
FC044 L D[AR2,P#0.0]'s block from previous post
FC045 Same as FC44 using any pointer instead
FC099 Looping bit by bit
FC100 Loop byte by byte then bit by bit
FC101 Loop dword then word then byte then rotate bits
FC102 Loop dword then convert to float
Last edited: