The NHIS collects injury reports as nested under Person Records (similar to how Person Records nest under Household Records). So each injury reported on the NHIS has a full set of questions specific to that single injury. In order to get injury information onto the Person Record, Injury-level information has to be aggregated (similar to how person-level data can be aggregated to the household-level, e.g. number of children under 10 is an aggregation of person level age information). The IRWHAT1 and IRWHAT2 variables are specific to single injuries whereas the INJDODRIVE and INJDOPAID are aggregations of this information. INDODRIVE represents the total number of times an injury occurred while ‘driving or riding in a motor vehicle.’ If you sum the values of INJDODRIVE, INJDOPAID, etc. you may end up with a total value larger than the respondents total number of accidents. This is because respondents are allowed to report that they were engaged in multiple activities when the injury occurred. For example, if you report only one injury, an injury while driving (IRWHAT1==1), but you were also eating at the time of the injury (IRWHAT2==8), you would receive a value of INJDODRIVE==1 and INJDOREST==1.
I hope this helps.