在CTF中的小端序与大端序

本文探讨了字节序对于数据存储和表示的影响,强调了字节序在计算机内存和网络传输中的重要性。区分了字节序与数组排序的区别,指出字节序主要影响单个变量的字节布局,而数组的顺序不受字节序影响。同时,提到了在不同架构下调试工具显示数据可能因字节序差异而需要调整。理解字节序对于理解和解决跨平台问题至关重要。
摘要由CSDN通过智能技术生成

大,人类为大。所以这是符合人的思维的。即高地址放数据低位
eg:地址从低到高的表示方式:[12][34]
12是低地址,但是为了人方便看,把数据的高位放在了低地址,这样子看起来的顺序还是 1234。方便看。
小端序:是为了计算机效率的。即高地址放数据高位。高高低低。
之前我走进了一个误区:将数组也当作字节序。其实不然。这里感谢师傅的提醒。

eg:设置int data = 0x1234
在这里,会受到字节序的影响,所以在CTF中,在调试工具中看到该数据,可能会因为字节序的不同,而要把数据进行一个位置的调整。
比如在intel架构OD中看到的3412。其实这是指的1234这么个数据。
这是会受到字节序影响的内容。
!这是一个变量!
但是数组[1,2,3,4]这么一个数组,并不会受到字节序的影响。它的排序无论大端序还是小端序都是一样的。!

之前的误区导致对字节序过了很多遍没发现问题。
谨记

http://www.ruanyifeng.com/blog/2016/11/byte-order.html
阮一峰的网络日志

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值