In SGML, this kind of character reference uses decimal numbers. XML added the kind beginning with &#x (in co-operation with the SGML committee, which has also added them to SGML) not because we are programming geeks who believe in torturing the innocent, but because in the Unicode book all the character tables are labelled in hexadecimal. This way you can refer back and forth between XML documents and the Unicode spec without having to do any conversions.
Back-link to specCopyright © 1998, Tim Bray. All rights reserved.