加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何将十六进制数字的字符串转换为Lua中代表的值

发布时间:2020-12-15 00:22:47 所属栏目:大数据 来源:网络整理
导读:我读了很多十六进制数据。他们作为字符串进入,我解析它们的line_codes,告诉我如何处理其余的数据。一行设置地址(MSW)的最高有效字,另一行设置最低有效字(LSW)。 那么我需要把它们连在一起,如果MSW =“00ff”,而LSW =“f10a” 地址将为00fff10a。 这一切
我读了很多十六进制数据。他们作为字符串进入,我解析它们的line_codes,告诉我如何处理其余的数据。一行设置地址(MSW)的最高有效字,另一行设置最低有效字(LSW)。

那么我需要把它们连在一起,如果MSW =“00ff”,而LSW =“f10a”
地址将为00fff10a。

这一切都很好,但是我应该检查地址是否在一组值之间:

if address <= "007FFFh" and address >= "000200h" then
    print "I'm in"
end

大家可能知道,Lua不是这个的粉丝,因为它使用< =和> =与字符串给我一个错误。

如果有一种方式,我可以将字符串转换成十六进制,这样“FFFF”会变成0xFFFF?

解决方法

你使用tonumber:
local someHexString = "03FFACB"
local someNumber = tonumber(someHexString,16)

请注意,数字不是十六进制数。它们也不是十进制,八进制或其他任何东西。他们只是数字。数字0xFF与255相同。“FF”和“255”是相同数字的字符串表示。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读