>>What är det bäst långt som ändrar bitfields som används för maskinvaruregister
är att inte använda bitfields.
>> Jag önskar att ändra ”DR” (bitar 3.2)
Jag ser inte hur det matchar dina bitfields DR
==============
Se, om detta är vad du kör för:
I något fall det verkar att du önskar din UpdateReg () fungerar för att vara allmän nog att behandla något scenario.
UpdateReg (rödingen maskerar, bränner till kol newPattern);
var maskera, är en uppsättning av godtyckligt förlade bitar som ska fri
Förmiddag som I antar, att du kan läsa registret i en vikarievariabel, och behandlar därefter den och skriver slutligen det baksida till HW-registret. (Detta inte är alltid riktigt, efter ibland läsning som HW-registret ändrar värdera.),
Så maskera anpassas till första klart de motsvarande bitarna i vikarievariabeln (efter du läser HW-registret). Därefter using maskera igen med det newPattern, jag har nu den giltiga uppsättningen av bitar (eller 0) till eller in i vikarieregistret. Skriv därefter vikarierna tillbaka till HWEN.