#include <iostream>
#include <bitset>
using namespace std;
int main() {
short short1 = 1024;
bitset<16> bitset1(short1);
cout << bitset1 << endl; // 0b00000100'00000000
short short2 = short1 >> 1; // 512
bitset<16> bitset2(short2);
cout << bitset2 << endl; // 0b00000010'00000000
short short3 = short1 >> 11; // 0
bitset<16> bitset3(short3);
cout << bitset3 << endl; // 0b00000000'00000000
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0c2V0PgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewogICAgc2hvcnQgc2hvcnQxID0gMTAyNDsKICAgIGJpdHNldDwxNj4gYml0c2V0MShzaG9ydDEpOwogICAgY291dCA8PCBiaXRzZXQxIDw8IGVuZGw7ICAgICAvLyAwYjAwMDAwMTAwJzAwMDAwMDAwCgogICAgc2hvcnQgc2hvcnQyID0gc2hvcnQxID4+IDE7ICAvLyA1MTIKICAgIGJpdHNldDwxNj4gYml0c2V0MihzaG9ydDIpOwogICAgY291dCA8PCBiaXRzZXQyIDw8IGVuZGw7ICAgICAvLyAwYjAwMDAwMDEwJzAwMDAwMDAwCgogICAgc2hvcnQgc2hvcnQzID0gc2hvcnQxID4+IDExOyAgLy8gMAogICAgYml0c2V0PDE2PiBiaXRzZXQzKHNob3J0Myk7CiAgICBjb3V0IDw8IGJpdHNldDMgPDwgZW5kbDsgICAgIC8vIDBiMDAwMDAwMDAnMDAwMDAwMDAKfQ==