Une variable codée sur 4 bits ?

Une variable codée sur 4 bits ? - C - Programmation

Marsh Posté le 23-01-2011 à 15:40:46    

Bonjour,
 
Je suis une quiche en programmation (souvenir lointains de ma scolarité).
 
Je cherche à adapté une appli linux prévue pour afficher des infos sur un framebuffer de 8 bits de profondeur.
Dans les en-tetes ceci est défini par  

typedef unsigned char fbval_t;


 
Je dois adapter cette appli ayant un framebuffer de 4 bits de profondeur.
Comment dois je adapter la définition du type de variable pour que ca colle ?
 
Merci d'avance,


Message édité par sorg le 23-01-2011 à 16:26:05
Reply

Marsh Posté le 23-01-2011 à 15:40:46   

Reply

Marsh Posté le 23-01-2011 à 22:09:16    

Vous pouvez utilisez des masques.
 
Mais si vous êtes une quiche, ça va pas être de la tarte.
 

Reply

Marsh Posté le 23-01-2011 à 22:10:47    

billgatesanonym a écrit :

Vous pouvez utilisez des masques.
 
Mais si vous êtes une quiche, ça va pas être de la tarte.
 


Ouep, c'est pas gagné... Je vais plutot cherché une appli existante capable de gérer un framebuffer de 4bit

Reply

Marsh Posté le 23-01-2011 à 23:01:42    

billgatesanonym a écrit :

Mais si vous êtes une quiche, ça va pas être de la tarte.

[:blague de merde]  
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 24-01-2011 à 10:22:02    

Faire des astuces à coup de structure de taille adéquate, ca peut être sympa aussi. Qui plus est, ca fait prendre la bonne habitude de traiter plusieurs éléments au sein de ses boucles.
 
typedef struct _EightPixelBlock
{
  unsigned p0 : 4;
  unsigned p1 : 4;
  unsigned p2 : 4;
  unsigned p3 : 4;
  unsigned p4 : 4;
  unsigned p5 : 4;
  unsigned p6 : 4;
  unsigned p7 : 4;
} EightPixelBlock;
 
 
(en faisant éventuellement attention à l'endianness pour l'ordre des pixels, chose que je n'ai pas prise en compte ici)


---------------
last.fm
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed