C | Tipos de datos | Pregunta 7

Suponga que el tamaño de char es de 1 byte y los negativos se almacenan en forma de complemento a 2

#include<stdio.h>
int main()
{
    char c = 125;
    c = c+10;
    printf("%d", c);
    return 0;
}

(A) 135
(B) +INF
(C) -121
(D) -8

Respuesta: (C)
Explicación: 125 se representa como 01111101 en binario y cuando sumamos 10, es decir, 1010 en binario, se convierte en: 10000111. Ahora, ¿qué significa representa este numero?
En primer lugar, debe saber que char puede almacenar números solo de -128 a 127, ya que el bit más significativo se guarda para el bit de signo. Por lo tanto, 10000111 representa un número negativo. Para verificar qué número representa, buscamos el complemento a 2 y obtenemos 01111001, que es = 121 en sistema decimal. Por lo tanto, el número 10000111 representa -121.
Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *