Convert Endian

Submission Date: 2024/9/22 15:58:49
Status: Accepted
Author: suzumushi
Lines: 3

VSM

# 0x32f8 is a magic number. I found this value with heuristics :-) # in terms of 16bit bsr operation, 0x32f8 = 0x8 # hvadd result of this value is {0x3CBE,0x10} = 0x10 # imm s"0x32f8" $nowrite sbsr $m[1,0,1,0] $aluf $nowrite; hvadd $aluf $aluf $nowrite ibsr $aluf $mauf $n0v

Standard Output

ACCEPTED!! score=3 j=3 m=0 bytes=104

Standard Error

------------------- vsm -------------------- # ======= In(0): ((4_PE:1))@LM0 / ULong ======= d set $lm0p0 1 5FE1DC66CBEA3DB3 # values=[6909045637428952499] / ULong @[0] d set $lm0p1 1 F362035C2EF5950E # values=[17537583593393853710] / ULong @[1] d set $lm0p2 1 BB63F46AC799D447 # values=[13502904847239337031] / ULong @[2] d set $lm0p3 1 9941AEBC98CB2C14 # values=[11043299886329703444] / ULong @[3] # 0x32f8 is a magic number. I found this value with heuristics :-) # in terms of 16bit bsr operation, 0x32f8 = 0x8 # hvadd result of this value is {0x3CBE,0x10} = 0x10 # imm s"0x32f8" $nowrite sbsr $m[1,0,1,0] $aluf $nowrite; hvadd $aluf $aluf $nowrite ibsr $aluf $mauf $n0v # ======= Out(0): ((4_PE:1))@LM1 / ULong ======= d getd $ln0n0c0b0m0p0 1 # expect=[12915737465693462879] / ULong @[0] d getd $ln0n0c0b0m0p1 1 # expect=[1051015667521905395] / ULong @[1] d getd $ln0n0c0b0m0p2 1 # expect=[5175930953527485371] / ULong @[2] d getd $ln0n0c0b0m0p3 1 # expect=[1453760636594831769] / ULong @[3] ------------------- asm -------------------- j 010000000000000000000000000000000000001010000000000000000000000100000000000110001011111000000011000000000000000000000000000000000000000011111111100111110110010111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000001011111000000000000000000000000000000000000000000000000000001011111000000000000000000000000000000000000000000000000000001011111000000000000000 j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000000001000000000000000000000000001010000000001000000011011111010011100000011110000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000 j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000000101000000000000000000000000000000000000011111111101011100001100101000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000011 ------------------- emu -------------------- DEBUG-LM1(n0c0b0m0p0,0):(-7.27246e-62) (0xb33deacb66dce15f) #d getd $ln0n0c0b0m0p0 1 # expect=[12915737465693462879] / ULong @[0] DEBUG-LM1(n0c0b0m0p1,0):(2.10752e-238) (0x0e95f52e5c0362f3) #d getd $ln0n0c0b0m0p1 1 # expect=[1051015667521905395] / ULong @[1] DEBUG-LM1(n0c0b0m0p2,0):(1.09532e+38) (0x47d499c76af463bb) #d getd $ln0n0c0b0m0p2 1 # expect=[5175930953527485371] / ULong @[2] DEBUG-LM1(n0c0b0m0p3,0):(1.7107e-211) (0x142ccb98bcae4199) #d getd $ln0n0c0b0m0p3 1 # expect=[1453760636594831769] / ULong @[3] ------------------- inputs -------------------- [ 6909045637428952499, 17537583593393853710, 13502904847239337031, 11043299886329703444] ------------------- expect -------------------- [12915737465693462879, 1051015667521905395, 5175930953527485371, 1453760636594831769] ------------------- actual -------------------- [12915737465693462879, 1051015667521905395, 5175930953527485371, 1453760636594831769] ------------------- check result --------------------