Como faço para ler números hexadecimais em um int não assinado em C
Eu estou querendo ler números hexadecimais de um arquivo de texto em um inteiro sem sinal para que eu possa executar as instruções da máquina. É apenas um tipo de simulação que olha dentro do arquivo de texto e de acordo com os valores e sua instrução correspondente gera os novos valores nos registradores.
Por exemplo, as instruções seriam:
1RXY -> Salvar registro R com valor no endereço de memória XY2RXY -> Salvar registro R com valor XYBRXY -> Ir para registrar R se xy é isso e aquilo etc.ARXY -> E registra R com valor no endereço de memória XYO arquivo de texto contém algo assim em uma nova linha. (em hexadecimal)
120FB007290BMeu problema é copiar cada instrução individual em um inteiro não assinado ... como faço isso?
#include <stdio.h>
int main(){
FILE *f;
unsigned int num[80];
f=fopen("values.txt","r");
if (f==NULL){
printf("file doesnt exist?!");
}
int i=0;
while (fscanf(f,"%x",num[i]) != EOF){
fscanf(f,"%x",num[i]);
i++;
}
fclose(f);
printf("%x",num[0]);
}