/* (C) David Vajda * 2025-08-15 * Converting ASCII String of Number 2 Binary Integer */ #include <stdio.h> int main (void) { //char *NumStr = "12453"; char *NumStr = "27318"; char *p; unsigned char bcdnums [5]; int i; int l; /* convert String of numbers to unsigned bcd */ for (i = 0, p = NumStr; *p != 0; p++, i++) bcdnums [i] = (*p) - '0'; l = i; /* quotient q * remainder r * mask 0b0001 0000*/ int q; int r; int v; // unsigned char m = 0x10; int bit = 0; int sum; int intnum = 0; do { r = 0; sum = 0; for (i = 0; i < l -1; i++) { bcdnums [i] = bcdnums [i] | (r << 4); q = bcdnums [i] / 2; r = bcdnums [i] % 2; bcdnums [i] = q; sum = sum + bcdnums [i]; } bcdnums [i] = bcdnums [i] | (r << 4); q = bcdnums [i] / 2; r = bcdnums [i] % 2; bcdnums [i] = q; intnum = intnum | (r << bit); sum = sum + bcdnums [i]; bit++; } while (sum != 0); printf ("%i %i\n", intnum, 1 << 4); return 0; }