Fortranのnint

Fortranのnint(実数を四捨五入する関数)がどこで四捨五入してるのかなー,と思い調べました.
具体的に言うと,
1. 四捨五入する小数点以下の桁数
2. 整数部分は関係ないのかどうか?

入力

Program round
  implicit none
  integer :: i
  real(8),dimension(8) :: a,b

  a(1) = 0.33
  a(2) = 0.44
  a(3) = 0.49
  a(4) = 0.50
  a(5) = 0.51
  a(6) = 0.55
  a(7) = 0.60
  a(8) = 0.90

  write(*,'(3A10)') "i","a(i)","b(i)"
  do i = 1,8
    b(i) = nint(a(i))
    write(*,'(I10,2F10.2)') i,a(i),b(i)
  end do
end Program round

出力

i a(i) b(i)
1 0.33 0.00
2 0.44 0.00
3 0.49 0.00
4 0.50 1.00
5 0.51 1.00
6 0.55 1.00
7 0.60 1.00
8 0.90 1.00

入力

Program round
  implicit none
  integer :: i
  real(8),dimension(8) :: a,b

  a(1) = 1.33
  a(2) = 1.44
  a(3) = 1.49
  a(4) = 1.50
  a(5) = 1.51
  a(6) = 1.55
  a(7) = 1.60
  a(8) = 1.90

  write(*,'(3A10)') "i","a(i)","b(i)"
  do i = 1,8
    b(i) = nint(a(i))
    write(*,'(I10,2F10.2)') i,a(i),b(i)
  end do
end Program round

出力

i a(i) b(i)
1 1.33 1.00
2 1.44 1.00
3 1.49 1.00
4 1.50 2.00
5 1.51 2.00
6 1.55 2.00
7 1.60 2.00
8 1.90 2.00

というわけで,
1. 小数点以下1桁目を四捨五入している.
2. 整数部分は関係ない.
が答えですかねー.