Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Maskieren_2
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);
}
}