|
楼主 |
发表于 2023-12-13 11:54:00
|
显示全部楼层
看了一个反汇编, 感觉有戏, 稍后好好测试一下.
; line 100: P45 = 1;
SETB P45
; line 101:
; line 102: SETSMCK:
SETSMCK:
CPL P45 ; Cycle 1
; line 103: // P45 ^= 1;
; line 104: P45 = ~P45;
; line 105: _nop_();
NOP ; Cycle 1, seize for sda cycle.
; line 106: // _nop_();
; line 107: // _nop_();
; line 108: // _nop_();
; line 109: goto SETSMCK;
SJMP SETSMCK ; Cycle 2, Total 4 Cycles in single loop
; line 100: P45 = 1;
SETB P45
; line 101:
; line 102: SETSMCK:
SETSMCK:
MOV C,P45 ; Cycle 2
CPL C ; Cycle 1
MOV P45,C ; Cycle 2
; line 103: P45 ^= 1;
; line 104: // P45 = ~P45;
; line 105: _nop_();
NOP ; Cycle 1
; line 106: // _nop_();
; line 107: // _nop_();
; line 108: // _nop_();
; line 109: goto SETSMCK;
SJMP SETSMCK ; Cycle 2, Total Cycle 8 in single loop. |
|