2009-05-13 10 views
6

Stavo facendo il debug l'altro giorno e ho trovato alcuni riempimenti di memoria e registro che non avevo mai visto prima su un hardware embedded che sto usando. Così ho iniziato un catalogo mentale. Per esempio:Hai un generatore "Nome" esadecimale per riempimenti?

DEADBEEF, BAADF00D, D15EA5ED, DECEA5ED, BAA5H33P... 

Qualcosa che sporge quando si guarda lo spettatore memoria ed è vagamente correlate a cosa si tratta (cancellato la memoria, terra di nessuno, outerwear ...).

Mi ha fatto pensare: c'è un generatore per questi? Qualcosa come un generatore di nomi l33t tranne che per i numeri esadecimali (esadecimali?).

risposta

7
$ grep -i '^[abcdefols]*$' /usr/share/dict/words | tr ols 015 
abaca 
abed 
abe1e 
ab1 
ab1e 
ab0de 
ab0ded 
acc 
accede 
acceded 
. 
. 
. 

0ff 
0ffa1 
0ffed 
0ff10ad 
0ff10aded 
01de 
01e0 
+1

molto succinta risposta –

+0

grep -i '^ [abcdefolst] * $'/usr/share/dict/words | tr olst 0157 – jreid9001

2

BAA5H33P ??

Contiene sia un H e un P? Quelle non sono cifre esadecimali valide.

vi siete persi di Java famoso CAFEBABE

Si può leggere di più su di esso a Wikipedia, tra cui:
CAB1E (cavo)
FACCIA
BEAD
C0ED
ecc, ecc ....

+0

Ok il BAA5H33P era uno scherzo – scobi

+1

Mentre siamo in tema di Java, mi piace :) 0xDECAFBAD –

1

Ah ah! "Hexspeak" era la parola chiave di cui avevo bisogno per i Googles.

Ecco uno Python program per trovare tutte le parole Hexspeak. E un list di ciò che quel programma ha trovato.

0

Oggi il mio cervello è confuso, ma funziona. Alter per gustare ...

#!/usr/local/bin/python 
letters = {'A':'A', 'B':'B', 'C':'C', 'D':'D', 'E':'E', 'F':'F', 'I':'1', 'O':'0', 'S':'5'} 
f = open('/usr/share/dict/words', 'r') 
for line in f: 
    line = line[:-1] 
    if len(line) < 4: 
     continue 
    word = "" 
    goodword = True 
    for c in list(line): 
     if c.upper() not in letters.keys(): 
      goodword = False 
     else: 
      word += letters[c.upper()] 
    if goodword: 
     print "%20s\t%s" % (line,word) 
f.close() 
Problemi correlati