Hallo!
Ich versuche es am Beispiel zu erklären.
Wir haben in einem "Register" unbekannte binäre Zahl (XXXXXXXXb) in der wir bestimmte Bits löschen/setzen wollen. Angenommen wir wollen Bits 3 und 2 löschen und Bits 1 und 0 setzen. Das geschieht mit sich im Code befindlicher ASM Befehlsfolge ohne Bits 7 bis 4 zu beeinflüssen.
MfGCode:movf Register,0 ; XXXXXXXXb, Register ins W-Register laden andlw 0xF3 ; 11110011b, danach im W-Register ist XXXX00XXb iorlw 3 ; 00000011b, danach im W-Register ist XXXX0011b movwf Register ; XXXX0011b, W-Register ins Register schreiben







Zitieren

Lesezeichen