开发者

Convert Byte String to Int in Scheme

开发者 https://www.devze.com 2022-12-09 04:22 出处:网络
I have code like this to convert hex into byte string (define (word->bin s) (let ((n (string->number s)))

I have code like this to convert hex into byte string

(define (word->bin s)
  (let ((n (string->number s)))
    (bytes (bi开发者_开发百科twise-and (arithmetic-shift n -24) #xFF)
    (bitwise-and (arithmetic-shift n -16) #xFF)
    (bitwise-and (arithmetic-shift n -8) #xFF)
    (bitwise-and n #xFF))))
(word->bin "#x10000002")

I'm thinking of a similar function to convert binary into integers, then print it. The end result is the binary translated to hex. Some helpful links: http://download.plt-scheme.org/doc/372/html/mzscheme/mzscheme-Z-H-11.html#node_sec_11.2.1

http://docs.plt-scheme.org/reference/bytestrings.html#(def.((quote.~23~25kernel)._bytes-~3estring/utf-8))


I'm not sure that this is what you're looking for, or even if you're using PLT, but if you do, then you should look at the integer-bytes->integer and integer->integer-bytes functions that are included in PLT. Note that these create byte strings with binary content -- so it might be different than what you're trying to do here.

(And if you're using version 372, then you should really upgrade.)

0

精彩评论

暂无评论...
验证码 换一张
取 消