hex

Incrementing (iterating) between two hex values in Python

天大地大妈咪最大 提交于 2020-12-05 04:58:39
问题 I'm learning Python (slowly but surely) but need to write a program that (among other things) increments between two hex values e.g. 30D681 and 3227FF. I'm having trouble finding the best way to do this. So far I have seen a snippet of code on here that separates the hex into 30, D6 and 81, then works like this- char = 30 char2 = D6 char3 = 81 def doublehex(): global char,char2,char3 for x in range(255): char = char + 1 a = str(chr(char)).encode("hex") for p in range(255): char2 = char2 + 1 b

Converting hex format to float numbers in R

夙愿已清 提交于 2020-12-04 03:19:42
问题 could you please someone help me how we can convert 4 byte hex format to float number in R? for example I want to transfer "aec7a042" to 80.39 . I could not find anything in R after lots of search to give me this conversion! The C function is BitConverter. ToSingle. But I need to do the same in R? Can anyone help me, please? 回答1: You can read this value using readBin . It seems you have a 4-byte signed float value. You can read that with: readBin("aec7a042", "double", size=4) # [1] 80.39 If

Converting hex format to float numbers in R

社会主义新天地 提交于 2020-12-04 03:15:09
问题 could you please someone help me how we can convert 4 byte hex format to float number in R? for example I want to transfer "aec7a042" to 80.39 . I could not find anything in R after lots of search to give me this conversion! The C function is BitConverter. ToSingle. But I need to do the same in R? Can anyone help me, please? 回答1: You can read this value using readBin . It seems you have a 4-byte signed float value. You can read that with: readBin("aec7a042", "double", size=4) # [1] 80.39 If

《深入理解计算机系统》(CSAPP)实验三 —— Buf Lab

时间秒杀一切 提交于 2020-12-02 15:22:27
这是CSAPP的第三个实验,主要让我们熟悉GDB的使用,理解程序栈帧的结构和缓冲区溢出的原理。 实验目的   本实验的目的在于加深对IA-32函数调用规则和栈结构的具体理解。实验的主要内容是对一个可执行程序“bufbomb”实施一系列缓冲区溢出攻击(buffer overflow attacks),也就是设法通过造成缓冲区溢出来改变该可执行程序的运行内存映像,继而执行一些原来程序中没有的行为,例如将给定的字节序列插入到其本不应出现的内存位置等。本次实验需要你熟练运用 gdb 、 objdump 、 gcc 等工具完成。   实验中你需要对目标可执行程序BUFBOMB分别完成5个难度递增的缓冲区溢出攻击。5个难度级分别命名为 Smoke (level 0)、 Fizz (level 1)、 Bang (level 2)、 Boom (level 3)和 Nitro (level 4),其中Smoke级最简单而Nitro级最困难。 准备工作   编译环境:Ubuntu 16.04,gcc 5.4.0。   在官网下载得到实验所需文件解压后会得到三个不同的文件。对三个文件简要说明如下所示。   README.txt:描述文件夹目录   bufbomb:将要攻击的缓冲区炸弹程序。   makecookie:根据您的用户名生成一个“ cookie”。   hex2raw

电子产品如何使用IAP方式升级程序

╄→гoц情女王★ 提交于 2020-12-01 13:49:53
目录 1、ICP、ISP和IAP的概念 2、IAP升级程序的原理 3、IAP升级程序的流程 4、IAR环境下IAP的实现 4.1、BootLoader程序设计 4.2、User Application程序设计 4.3、IAR地址配置及文件输出 5、拓展:解析HEX文件 1、ICP、ISP和IAP的概念 在项目开发过程中通常使用SWD、JTAG等工具进行程序烧录和仿真,若产品节点较少还是比较方便,但是当设备节点量产时,就需要使用IAP的方式进行程序烧录。 简单说明几个概念ICP、ISP和IAP。 ICP In-circuit programmer ICP:在电路编程,MCU内部不需要有程序,上电就能够对程序存储区域进行编程,例如平时使用JTAG、SWD等方式。 ISP In-system programer ISP:在系统编程,通过MCU专用的串行编程接口进行编程,MCU需要具有运行的外部条件,例如有晶振等。 例如STM32通过设置BOOT引脚设置对应启动模式,然后通过串口等对内部Flash进行升级,可以说这种方式就是厂家在芯片内部固化了一个BootLoader程序。 IAP In-application programer IAP:在应用编程,开发者设计BootLoader程序,通过串口、CAN、以太网等通信方式实现程序升级。 2、IAP升级程序的原理 通常一块MCU芯片

micro:bit的MakeCode错误码

余生颓废 提交于 2020-11-29 00:37:20
如果在运行makecode程序时,在屏幕上显示下面的动画(哭脸加数字),代表程序出现错误。显示的数字就代表了错误代码。 通过错误代码,就可以知道出现了什么错误。下面是microbit提供的部分错误码: 错误号码 这意味着什么 10 micro:bit的I2C总线不工作。设备可能会受到物理损坏。 20 micro:bit上没有空闲内存。您的程序可能过于复杂或包含许多大变量。尝试减少代码。 30 在micro:bit堆空间中检测到损坏(通常为存储变量分配的内存)。尝试将不同的.hex文件刷新到您的设备 40 micro:bit无法正确执行你的脚本。向其中写入一个不同的.hex文件,然后尝试再次闪烁并运行您以前的脚本。 42 micro:bit无法正确执行你的脚本。向其中写入一个不同的.hex文件,然后尝试再次闪烁并运行您以前的脚本。 43 micro:bit的无线电组件发生错误。 50 micro:bit的加速度计组件发生错误。 51 micro:bit的磁力计组件发生错误。 98 断言失败。 断言中 的条件为false 时发生的MakeCode错误。 来自: https://microbit.org/guide/hardware/error-codes/ 本文分享自微信公众号 - MicroPython中文社区(MicroPython_cn)。 如有侵权,请联系 support

802.11抓包软件对比之Microsoft Network Monitor

被刻印的时光 ゝ 提交于 2020-11-26 11:27:28
<div id="article_content" class="article_content clearfix"> <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-b5506197d8.css"> <div id="content_views" class="markdown_views prism-atom-one-dark"> <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <p>从事WiFi嵌入式软件开发的同学,802.11协议层抓包分析是一个需要熟练掌握的一个技能,需要通过分析WiFi底层802.11协议层的数据包来定位问题。同时从学习802.11协议的角度而言,最有效的学习方法就是通过抓包来学习,从抓到的数据包中

TA416 使用 PlugX 恶意软件新的 Golang 变种进行攻击

て烟熏妆下的殇ゞ 提交于 2020-11-25 18:31:26
原文链接: https://www.proofpoint.com/us/blog/threat-insight/ta416-goes-ground-and-returns-golang-plugx-malware-loader 译者:知道创宇404实验室翻译组 概要 国庆假期之后,安全研究人员观察到APT组织TA416重新开始了活动。这次活动以在非洲开展外交活动的组织为目标。攻击者对工具集进行更新以逃避检测,该工具集用于传递PlugX恶意软件的有效负载。研究人员发现了TA416的PlugX恶意软件新的Golang变种,并且确定了攻击者在活动中对PlugX恶意软件的持续使用。 新的网络钓鱼活动 研究人员发现,APT组织TA416(也被称为Mustang Panda、RedDelta)再次出现网络钓鱼活动的时间是有规律的。最近休眠的一段时间是2020年9月16日到2020年10月10日。这段时间包括中国的国庆节和非官方假期“黄金周”。之后,TA416恢复了钓鱼活动,并且继续使用社会主题诱饵。 PlugX恶意软件分析 安全人员发现了两个RAR存档,其中一个是自解压的,它们可以作为PlugX恶意软件的删除工具。为了进行分析,我们检查了自解压文件 AdobelmdyU.exe |

MQTT X v1.3.3 正式发布

佐手、 提交于 2020-11-25 05:26:23
MQTT X 是由全球领先的 开源物联网中间件 提供商 EMQ 开源的一款跨平台 MQTT 5.0 桌面测试客户端,它支持 macOS,Linux,Windows。MQTT X 的用户界面借助聊天软件的形式简化了页面的操作逻辑,用户可以快速创建多个同时在线的 MQTT 客户端 ,方便测试 MQTT/TCP、MQTT/TLS、MQTT/WebSocket 的连接/发布/订阅功能及其他 MQTT 协议 特性。 MQTT X 网站: https://mqttx.app/cn/ MQTT X v1.3.3 版本下载: https://github.com/emqx/MQTTX/releases/tag/v1.3.3 Mac 用户可在 App Store 中进行下载: https://apps.apple.com/cn/app/mqttx/id1514074565?mt=12 Linux 用户可在 Snapcraft 中进行下载: https://snapcraft.io/mqttx 新功能概览 使用 Toipc 的颜色标记接收消息,展示主题与消息之间的对应关系 在 MQTT X 中添加订阅 Topic 时,可以选择对应颜色,对 Topic 进行区分。在该版本中还新增了当接收到订阅过的 Topic 消息时,消息框左侧会有和已订阅 Topic 一样的颜色标记,这样可以在接收到很多不同的

HEX文件格式

北战南征 提交于 2020-11-24 14:33:47
Embedded的世界里,Hex文件是可以烧录到MCU中,被MCU执行的一种文件格式。 整个文件以行为单位,每行以冒号开头,内容全部为16进制码(以ASCII码形式显示)。 // 一个简单结构的HEX文件内容 :020000040008F2 :10000400FF00A0E314209FE5001092E5011092E5A3 :00000001FF 例子: Hex文件里每一行都可以理解为该结构: Record mark(:) - 数据长度Length(1Byte) - 地址Load offset(2Byte) - 数据类型Record type(1Byte) - 数据INFO or DATA(nByte) - 校验码CHKSUM(1Byte) 可以按照如下的方式进行拆分来分析其中的内容,例如 “:1000080080318B1E0828092820280B1D0C280D2854” 可以被看作“0x10 0x00 0x08 0x00 0x80 0x31 0x8B 0x1E 0x08 0x28 0x09 0x28 0x20 0x28 0x0B 0x1D 0x0C 0x28 0x0D 0x28 0x54” 第一个字节 0x10表示本行数据的长度,第二、三字节 0x00 0x08表示本行数据的起始地址; 第四字节 0x00表示数据类型,数据类型有:0x00、0x01、0x02、0x03