Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chuyển đổi nhị phân sang thập lục phân trong C

Số nhị phân dùng 0 và 1. Hệ thập lục phân (hex) có 16 chữ số: 0-9, A(10)-F(15). Để chuyển nhị phân sang hex: nhóm 4 bit (nibble) từ bên phải, mỗi nhóm thay bằng chữ số hex tương ứng.

Ví dụ: 0011 1110 0101 1011 0001 1101 → 3 E 5 B 1 D → 0x3E5B1D

Ví dụ khác: 7529 (thập phân) = 0001 1101 0110 1001 (nhị phân) = 0x1D69 (hex)

Chương trình chuyển đổi bằng vòng lặp while

#include <stdio.h>
int main() {
    long int binaryval, hexadecimalval = 0, i = 1, remainder;
    printf("Enter the binary number: ");
    scanf("%ld", &binaryval);
    while (binaryval != 0) {
        remainder = binaryval % 10;
        hexadecimalval = hexadecimalval + remainder * i;
        i = i * 2;
        binaryval = binaryval / 10;
    }
    printf("Equivalent hexadecimal value: %lX", hexadecimalval);
    return 0;
}

Kết quả

Enter the binary number: 11100
Equivalent hexadecimal value: 1C