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 XY

O arquivo de texto contém algo assim em uma nova linha. (em hexadecimal)

120FB007290B

Meu 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]);
}

questionAnswers(6)

yourAnswerToTheQuestion