A control device for an internal combustion engine, comprising: a fuel injection valve that injects fuel into a cylinder of an internal combustion engine; injection control means for setting an injection timing of fuel by the fuel injection valve; oxygen concentration acquiring means for acquiring an oxygen concentration in gas that is taken into the cylinder as an intake oxygen concentration; NOx amount calculation means for calculating a NOx amount in exhaust gas, based on at least two parameters comprising exponentiation of an injection timing of an effective injection that is a fuel injection that contributes to combustion in the cylinder, and exponentiation of the intake oxygen concentration, wherein the effective injection comprises a main injection and an after injection; an air flow sensor that detects a fresh air amount that is taken into the cylinder; an air-fuel ratio sensor that detects an exhaust air-fuel ratio; and characterized by learning storage means for calculating an A/F learning correction coefficient that is a ratio of an air-fuel ratio calculated based on an injection amount of the effective injection and the fresh air amount, and a detection value of the air-fuel ratio sensor, and storing the A/F learning correction coefficient for each operation region, wherein the NOx amount calculation means is configured to calculate a corrected estimated A/F based on the A/F learning correction coefficient which is read from the learning storage means in accordance with an operation region at a present time point, and calculate the NOx amount based on at least the two parameters and the corrected estimated A/F. a fuel injection valve that injects fuel into a cylinder of an internal combustion engine; injection control means for setting an injection timing of fuel by the fuel injection valve; oxygen concentration acquiring means for acquiring an oxygen concentration in gas that is taken into the cylinder as an intake oxygen concentration; NOx amount calculation means for calculating a NOx amount in exhaust gas, based on at least two parameters comprising exponentiation of an injection timing of an effective injection that is a fuel injection that contributes to combustion in the cylinder, and exponentiation of the intake oxygen concentration, wherein the effective injection comprises a main injection and an after injection; an air flow sensor that detects a fresh air amount that is taken into the cylinder; an air-fuel ratio sensor that detects an exhaust air-fuel ratio; and characterized by learning storage means for calculating an A/F learning correction coefficient that is a ratio of an air-fuel ratio calculated based on an injection amount of the effective injection and the fresh air amount, and a detection value of the air-fuel ratio sensor, and storing the A/F learning correction coefficient for each operation region, wherein the NOx amount calculation means is configured to calculate a corrected estimated A/F based on the A/F learning correction coefficient which is read from the learning storage means in accordance with an operation region at a present time point, and calculate the NOx amount based on at least the two parameters and the corrected estimated A/F.