APPENDIX
BENCHMARK: Block Move
PROCESSOR: Intel iAPX 88
;REGISTER USAGE:
CX - BLOCK LENGTH SI - SOURCE POINTER
01 - DESTINATION POINTER
Bytes | Cycl es |
|
|
|
|
|
|
1 | 2 | CLD |
|
|
| ;Clear direction flag | |
3 | 4 | MOv | SI,FROM | ;Initialize | Source Pointer | ||
3 | 4 | MOv | 01, TO |
| ;Initialize | Destination Pointer | |
3 | 4 | MOV | CX,LNGTH | ;Initialize | Block Length | ||
1 | 2 | INC | CX |
|
| , |
|
, | , | SHR | CX,l |
| ;Adjust LNGTH for word moves | ||
, | 9+25/ | REP MOvS | TO, FROM | ;Move Block |
| ||
|
| 15 | bytes | of | code |
|
|
|
| 7 lines | of | code |
|
|
32 | AFN 01532A |