Sandro Djuric / sandrodjuric

Maskieren_2

Table of Contents

  1. Lektion 2: Maskieren

Wiki_Seite_kopieren

Gehe auf die Lehrerbox/PE/TINF und kopiere den Inhalt der Datei program-wiki.txt auf IHRE EIGENE Wiki-Seite und ändere bzw. erweitere die entsprechenden Programme bzw. Textteile.

Diese Programme wurden im Mbed-Simulator geschrieben und getestet.

Lektion 2: Maskieren

Programmbeschreibung:
Änderungen:
Datum:

Maskieren.cpp

	

#include "mbed.h"
 
BusOut myleds(LED1, LED2, LED3, LED4);
 
void print_binary(uint8_t x) { 
    for(int i=sizeof(x)<<3; i; i--)
        putchar('0'+((x>>(i-1))&1));
}
 
int main() {
    uint8_t value = 0b01011111;
    uint8_t mask =  0b00001111;
    uint8_t position = 0;      
    
    // scanf("%d", &value);
    printf("value : ");
    print_binary(value);       
    printf("\nmask  : ");
    print_binary(mask);
    value = mask & value;
    myleds = value;
    printf("\nresult: ");
    print_binary(myleds.read());
    
    value=0b11111111;
    printf("\n\n");
    scanf("%d",&position);
    mask = 1 << position;
    value = value & ~mask;
    print_binary(value);
    
    value=0b00000000;
    printf("\n\n");
    scanf("%d",&position);
    mask = 1 << position;
    value = value | mask;
    print_binary(value);
    printf("\n\n");
    //printf("\n\nshift left:  %X\n", value<<1);
   // printf("shift right: %X\n",     value>>1);
}

}

All wikipages