Module: Binäre Verschiebungen (C++)


Problem

1/4

Definieren eines Zahlenzeichens

Theory Click to read/hide

Situation

Alle Computerspeichernummern werden in doppelter Form, d.h. in der Reihenfolge 0 und 1 gespeichert. Die letzte Anzahl der Sorten wird verwendet, um die Chips im Computerspeicher zu speichern. Aufgrund dieser Anzahl weist der Computer einen begrenzten Bereich auf und die Ergebnisse können ungenau sein. 8, 16, 32 oder 64 Speicherbündel können verwendet werden, um eine ganze Zahl zu speichern. Jede zusätzliche Schlacht soll den Bereich der möglichen Werte verdoppeln.
Operationen mit positiven und negativen Zahlen werden im Prozessor auf den gleichen Algorithmen durchgeführt.

Durch numerische Logikoperationen können einzelne Pakete von Prozessoren und externen Geräten verwaltet werden.
Betrieb C++Ernennung
a & bGetötet И für a und b
a | bGetötet ИЛИ für a und b
a ^ bOhneИЛИ für a und b
~aBit Konvertierung a
a << bKampfschicht nach links ab
a >> bBattered Verschiebung nach rechts ab



Betrieb И
Mit Hilfe OperationenИ Sie können die Fledermäuse fallen, für die die Maske 0 ist!
Maske - Konstante, die den Anwendungsbereich einer logischen Operation auf mehrdimensionale Fledermäuse definiert.

D - Daten, М - Maske


Betrieb ИЛИ
Mit Hilfe OperationenИЛИ Sie können eine Einheit in einer Fledermaus aufnehmen, für die die Maske 1 ist!


Betrieb исключающее ИЛИ
Mit Hilfe Operationenисключающее ИЛИ Sie können die Fledermäuse invertieren, für die die Maske 1 ist!



Nach links wechseln
Logik (gestreut)сдвиг влево на 1 Der Grad erhöht die ganze Zahl um die Hälfte.


Rechts bewegen
Logic.сдвиг вправо на 1teilt eine ganze positive Zahl auf zwei.


Da ein Zeichen rechts von den freigestellten Positionen getroffen wird, ist die Anzahl der Signale angegeben. x Sie kann durch Verschieben nach rechts für die gesamte Länge der Größe bestimmt werden.

Problem

пусть дано число x.определить знак числа.

Добавьте в программу недостающий фрагмент кода.
  & nbsp;
Примеры
deutsch Входные данныеВыходные данные
1 10 1
2 -10 -1
3 0 0
Write the program below
#include <iostream>
using namespace std;

int getSign(int x) {
	int mask;  
if (x != 0)
		mask = 1;
	else
		mask = 0;           
}

int main()
{
	int x;
	cin >> x;
	cout << getSign(x);
	return 0;
}
             

     

Program check result

To check the solution of the problem, you need to register or log in!