Nucleotide sequences coding proteins in human, yeast and Escherichia coli genes were analyzed in terms of dinucleotide occurrences. Every gene is plotted as a point in the dinucleotide space, which is spanned by 16 axes corresponding to the 16 components of the dinucleotide. The metric unit in the space is defined using the log-odds ratio of dinucleotide occurrences in a gene. The distribution of points showed that genes from the same organism are clustered in the space. The clusters of human and E. coli are completely separated, and the yeast cluster sits between, implying that individual genes are classified into the three sources from their location. In fact, they could be identified with accuracy of 90%, using the DNA data alone. Even genes encoding homologous proteins belonging to the same protein superfamily were discriminated by the DNA data, and were correctly identified into their sources with the same accuracy as above. DNA sequences of non-coding regions, including human introns, as well as human genes of GC-rich and GC-poor types, were also analyzed in the same manner. The most significant finding is that human genomic DNA sequences, including genes and introns together, exhibit the largest deviation of dinucleotide occurrence from the random expectation. Possible origins for this phenomenon are discussed.