Сообщение от
GrAMm.78
Может, где-то на форуме данная проблема и описана, но подскажите, пожалуйста. В общем, мне нужно в моей функции опросить состояние бита регистра PSW. То есть, в условии
if (GetPSBStatus(256))
SetPSB(356);
else
ResetPSB(356);
вместо PSB необходимо проверять бит регистра PSW. Как это сделать?
Операции AND еще никто не отменял
Код:
if (PSW[256] & 0x01) //проверить бит 0
SetPSB(356);
else
ResetPSB(356);
if (PSW[256] & 0x02) //проверить бит 1
SetPSB(357);
else
ResetPSB(357);
if (PSW[256] & 0x04) //проверить бит 2
SetPSB(358);
else
ResetPSB(355);
//и т.д.
//----------------------------
//или так
if (PSW[256] & (1<<0)) //проверить бит 0
SetPSB(356);
else
ResetPSB(356);
if (PSW[256] & (1<<1)) //проверить бит 1
SetPSB(357);
else
ResetPSB(357);
if (PSW[256] & (1<<2)) //проверить бит 2
SetPSB(358);
else
ResetPSB(358);
if (PSW[256] & (1<<3)) //проверить бит 3
SetPSB(359);
else
ResetPSB(359);
//и т.д.