Ich weiss nicht, wo das Problem liegt. Du holst dir die ganzen Werte in dein Array. Nun kannst du doch die Bits wie in der verlinkten Anleitung ausmaskieren und die jeweils erhaltenen Werte nach der Anleitung als richtige Cache Grössen ausgeben. Ich kapier wirklich nicht wo das Problem liegt.
Ein Beispiel hatte ich schonmal hier gepostet:
L2 Cache Grösse ermitteln bei AMD & Intel
Beachte, das jeder Hersteller bei den CPUID Angaben zum Cache sein eigenes Süppchen kocht. Mit dem Beispiel wirst du den L1 Cache ergänzen können.