Truncating to a given bit length
14 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Buddhini Angelika
el 30 de Dic. de 2015
Comentada: Walter Roberson
el 6 de En. de 2016
I have a gui which gives a result as follows. Result=a253ff09c5a8678e1fd1962b2c329245e139e45f9cc6ced4e5d7ad42c4108fc0. Is there a way to truncate the above result to a given bit length? (Say bit lengths of 19,13,10 etc.)
Please help me with the above question.
Thanks a lot in advance.
1 comentario
Walter Roberson
el 30 de Dic. de 2015
This question seems likely to be related to http://uk.mathworks.com/matlabcentral/answers/262105-using-hash-functions-editing-contents-of-uitable and might even be the same question.
Respuesta aceptada
Walter Roberson
el 30 de Dic. de 2015
Assuming Result is a string and assuming that the values represent hex,
NeededBitLength = 19; %for example
bitvec = reshape(dec2bin(sscanf(Result,'%1x'),4).',1,[]);
bitvec = bitvec(end-NeededBitLength+1 : end);
truncatedResult = bin2dec(bitvec);
Caution: if you need more than 53 bits this version will not work.
4 comentarios
Walter Roberson
el 6 de En. de 2016
I am certain that SHA-256 does not expect you to work with word lengths of more than 64 bits. Typical implementations work with arrays of 32 bit words.
Más respuestas (0)
Ver también
Categorías
Más información sobre Debugging and Analysis en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!