anchor.diff:      ((= opcode #x37) (ascii-adjust-after-addition))
       ((= opcode #x3f) (ascii-adjust-after-subtraction))
       ((in-paired-byte-block-p opcode #xf2) (repeat-prefix opcode))
  -    ((in-paired-byte-block-p opcode #xa4) (mov-string opcode))))
  +    ((in-paired-byte-block-p opcode #xa4) (mov-string opcode))
  +    ((in-paired-byte-block-p opcode #xaa) (store-string opcode))
  +    ((in-paired-byte-block-p opcode #xac) (load-string opcode))
  +    ((in-paired-byte-block-p opcode #xa6) (compare-string opcode))
  +    ((in-paired-byte-block-p opcode #xae) (scan-string opcode))))
   
   ;;; Main functions
   
  
positive.code:     ((in-6-byte-block-p opcode #x28) (parse-alu-opcode opcode sub-without-borrow))
      ((in-6-byte-block-p opcode #x30) (parse-alu-opcode opcode xor-operation))
      ((in-6-byte-block-p opcode #x38) (parse-alu-opcode opcode cmp-operation))
      ((in-paired-byte-block-p opcode #xa8) (test-accumulator-with-immediate opcode))
      ((in-paired-byte-block-p opcode #x84) (test-memory-register opcode))
      ((in-4-byte-block-p opcode #x80) (parse-group1-opcode opcode))
      ((in-4-byte-block-p opcode #x88) (parse-mov-opcode opcode))
      ((in-paired-byte-block-p opcode #x86) (xchg-memory-register opcode))
      ((in-paired-byte-block-p opcode #xc6) (parse-group11-opcode opcode))
  
negative.code: (defmacro string-operation (opcode operation)
    `(with-size-by-last-bit ,opcode
       (let ((diff (if is-word 2 1)))
         (,operation is-word)
         (when (flag-p :df)
  	 (decf (register :si) diff)
  	 (decf (register :di) diff))
  