Actually, in the Ansi code scheme, the numbers have lower code values than the lower-case letters which have lower code values than the upper-case letters. The keyboard special characters are interspersed throughout the sequence.
Actually Lr uses Unicode not ASCII but the general principle is correct.
The issue revolves around how Lr (the SQLite database in fact) "perceives" STRINGS of characters rather than individual characters.
If B733 is perceived as B-733 (ie 733 as a number) or B-7-3-3 (each character treated separately) it changes how it is parsed when compared to B77.
In the first case B77 will be placed before B733 and in the second case B733 will come before B77.
I am in the process of investigating exactly how alphanumeric strings are handled in Lightroom (as opposed to pure alphabetical strings or pure numeric strings). When I know the answer I will report back.