Cours:TpiiChenillardDouble

De troyesGEII
Aller à : navigation, rechercher

retour vers la page des Tps II

Solution avec une boucle while

#include "commcarte.h"
void printbits(unsigned char n)
{
  int i;
  for (i=7;i>=0;i--)  printf("%d", (n >> i ) & 1);
}
int main() { int device; //device=openParPort("/dev/parport0"); unsigned char val,val2,cpt=0; while (cpt<3) { cpt++; val=0x01; // 0000 0001 val2=0x80; // 1000 0000 while (val) { //ecrireParPort(device,val|val2); printbits(val|val2);printf("\n"); val=val<<1; val2=val2>>1; //usleep(100000); } } //closeParPort(device); }


Solution avec boucle for

multiplication/division par 2

#include "commcarte.h"
void printbits(unsigned char n)
{
  int i;
  for (i=7;i>=0;i--)  printf("%d", (n >> i ) & 1);
}
int main() { int device; //device=openParPort("/dev/parport0"); unsigned char i,j,cpt; for (cpt=0;cpt<3;cpt++) { j=0x80; // 1000 0000 for (i=1;i>0;i*=2) { //ecrireParPort(device,i|j); printbits(i|j);printf("\n"); //usleep(100000); j=j/2; } } //closeParPort(device); }

décalage de n bits

#include "commcarte.h"
void printbits(unsigned char n)
{
  int i;
  for (i=7;i>=0;i--)  printf("%d", (n >> i ) & 1);
}
int main() { int device; //device=openParPort("/dev/parport0"); unsigned char i,j,cpt; for (cpt=0;cpt<3;cpt++) { j=7; for (i=0;i<8;i++) { //ecrireParPort(device,1<<i|1<<j); printbits(1<<i|1<<j);printf("\n"); //usleep(100000); j--; } } //closeParPort(device); }

retour vers la page des Tps II