enc = "灩捯䍔䙻ㄶ形楴獟楮獴㌴摟潦弸彥ㄴㅡて㝽"
output, output2 = "", ""
for i in range(len(enc)):
output += chr(ord(enc[i])>>8)
output += chr(ord(enc[i]) - ((ord(enc[i])>>8)<<8))
two_byte_char_code = ord(enc[i])
upper_byte_char_code = ord(enc[i])>>8
upper_byte_isolated_char_code = (ord(enc[i])>>8)<<8 # The shifting to the left zeros out the lower byte.
lower_byte_char_code = ord(enc[i]) - ((ord(enc[i])>>8)<<8)
# Alternatively convert to string and then split the string binary representation.
two_byte_char_code_in_bin = bin(two_byte_char_code)[2:].zfill(16)
upper_byte_char_code1 = two_byte_char_code_in_bin[0:8]
lower_byte_char_code1 = two_byte_char_code_in_bin[8:16]
#print(int('01110000', 2))
#print(upper_byte_char_code1, lower_byte_char_code1)
#print(chr(int(upper_byte_char_code1, 2)) , chr(int(lower_byte_char_code1, 2)))
output2 += chr(int(upper_byte_char_code1, 2)) + chr(int(lower_byte_char_code1, 2))
print(bin(two_byte_char_code), bin(upper_byte_char_code), bin(upper_byte_isolated_char_code), bin(lower_byte_char_code))
#print(two_byte_char_code, upper_byte_char_code, upper_byte_isolated_char_code, lower_byte_char_code)
#print(chr(upper_byte_char_code), chr(lower_byte_char_code))
#output += chr(ord(enc[i]) - ((ord(enc[i])//256)*256))
#output += chr(ord(enc[i]) & 0xFF)
print(output)
print(output2)