Pedro Morales
Preguntacomo se especifica que es un numero negativo en binario?

Jesus Mendez Chavez
Es algo realmente sencillo, ocupemos por ejemplo las variables de tipo int las cuales contienen 16 bits**, de los cuales 15 son ocupados para contener el número, y el último bit se reserva para el signo, por ejemplo:
int a = 15;
Donde esta sería su representación en decimal, pero si hacemos su representación en binario (que es como realmente lo almacenan las computadoras) se vería algo así (como dato así es como en C indicas que el contenido de una variable está en binario con el 0b):
int a = 0b0000000000001111;
Por otra parte si tenemos el número:
int b = -15;
Su representación en binario se vería algo así:
int b = 0b1000000000001111;
Donde se aprecia claramente que el último bit de nuestra variable almacena al signo en cuestión.
Pero si por alguna razón solo vas a almacenar números enteros y necesitas ocupar el último bit en vez del signo, cómo otro bit para almacenar números ocupamos la palabra reservada unsigned la cual se puede utilizar con cualquier tipo de variables numéricas, como se ve a continuación:
unsigned int c = 30;
Esto nos permite aumentar la capacidad de nuestra variable pero nos quita la oportunidad de usar números negativos, como tal lo que hace la palabra unsigend es indicarle al compilador que no estaremos ocupando el último bit para el signo si no como otro más para almacenar números.
** en algunas bibliografías se encuentra que la variable int es de 16 bits y en otras que es de 32, pero esto depende meramente del hardware del equipo sobre el cual se está trabajando.

Luis Lira
Hola! Te dejo un pequeño video donde explican cómo funciona esto de los número negativos en binario :D https://www.youtube.com/watch?v=dixsgx3DKwY