Hi,
Sounds a lot like BASE64 encoding to me...
Anyway, here's one way of doing what you ask:It produsces the followin outputCode:InValues VAR BYTE[4] OutValues VAR BYTE[3] ' Max assignable value is 63 InValues[0] = 50 InValues[1] = 51 InValues[2] = 52 InValues[3] = 53 Main: HSEROUT["Program start",13] OutValues[0] = ((InValues[0] & %00111111) << 2) + ((InValues[1] & %00110000) >> 4) OutValues[1] = ((InValues[1] & %00001111) << 4) + ((InValues[2] & %00111100) >> 2) OutValues[2] = ((InValues[2] & %00000011) << 6) + ((InValues[3] & %00111111)) ' Print input values, only the 6 least significant bits of each value HSEROUT[BIN6 InValues[0], BIN6 InValues[1], BIN6 InValues[2], BIN6 InValues[3],13] ' Print output values, now encoded into 3 bytes. HSEROUT[BIN8 OutValues[0],BIN8 OutValues[1], BIN8 OutValues[2],13] Pause 100 END/Henrik.Code:Program start 110010110011110100110101 110010110011110100110101
Bookmarks