Ver Mensaje Individual
  #6  
Antiguo 19-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Reputación: 19
MaMu Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Es esto lo que quieres?

Código Delphi [-]
Function IsBitEnable(freg,bitnum:byte):boolean;macrolike;
begin
case bitnum of
1 : bitnum := 1;
2 : bitnum := 2;
3 : bitnum := 4;
4 : bitnum := 8;
5 : bitnum := 16;
6 : bitnum := 32;
7 : bitnum := 64;
8 : bitnum := 128;
result := (freg and bitnum) = bitnum;end
La idea es esa, pero en assembler. Otro dato, es que yo pondria:

Código Delphi [-]
Function IsBitEnable(freg,bitnum:byte):boolean;macrolike;
begin
case bitnum of
1 : bitnum := $1;
2 : bitnum := $2;
3 : bitnum := $4;
4 : bitnum := $8;
5 : bitnum := $10;
6 : bitnum := $20;
7 : bitnum := $40;
8 : bitnum := $80;
result := (freg and bitnum) = bitnum;
end;
por la sencilla razón de conversión de datos. Es decir, el peso delbit 7 leido, será de 127 y no de 128, lo que trae conflictos a la horade jugar con máscaras.
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita