Why doesn’t the NHGIS data include FIPS codes?
FIPS codes did not exist prior to the 1970 Census, so they could not be provided for older census data tables. The NHGIS instead provides custom codes, which generally correspond to FIPS codes, with an added zero, for all areas that persisted beyond 1970. For recent censuses, NHGIS shapefiles include concatenated NHGIS codes but not the FIPS codes in order to minimize file size. FIPS codes do exist within all NHGIS data tables for 1970 and later, but the codes are not concatenated as you would typically find in data downloaded from American Fact Finder.