指针1. What is M like M是一维线性空间:a array of addressed bytes 2

m空间  时间:2021-05-08  阅读:()

1.What is M like:M是一维线性空间 a array of addressed bytes

2.Address each byte 【注编址单位】 of M is numbered, such as 0x0000-0000~0xffff-ffff

 一个字的地址 4个字节的地址中最小的那个

 一个字的存放

 endian的问题 little endian高高低低于x86下

 对齐的问题 CPU在一个总线周期内完成M的R/W 【后面有单独介绍】

3.What is in M:code and data

 CPUM的图 下面第4点会完善之

4.How can M beclassified? 【可以画一个8086的图指令的执行过程】 【另外 OS book的第一章的举例】 【另外可以参考Unit 3的layout图】

 Code段:操作码操作数 PCCSIP

 Data段 DS

 C语言变量名and type

 编译器 Encoding size and编码规范 【即Unit 2的内容】

 整数补码

 浮点数 I EEE标准

 机器代码 bits序列and size

 Stack段一个特殊的数据段LIF O S SS PBP

5.数据段中 Address也可以放入M中。 【即地址也是一个数】 【说明 1.3.2.1中的有一个推理过程。现反之比如0x10可以被理解成一个数值也可以被理解成是一个Address】

 定义 Pointer指针

 其所占的M空间大小 4字节32位平台下

6指针的两个运算符 &and*

 Textbook上提及一个现象一个M有两个名字可利用C专家里面的c onst举例

7.M的分配举例 【画一个图逐一表示说明分配的独立性。另外p o inter占4字节】

 char *c=’a’ ;

 char *p;

 p=&a;

8.指针的算术运算如++/--

 语法含义的一致性下一个/上一个元素

 编译器进行翻译,具体偏移多少指针类型相关

 原因 c ompiler能够得到指针类型的信息

 优点利用指针访问数组的时候

 to manipulate arrays using pointer expressions,no matter what the type of the arrayc ontents

 Pointer expressions are easier to read

 less abstract closer to how the hardware

 缺点效率低【说明关于这点 TextBook写错了可以见汇编代码对比】

9.威力所在之一指向任意强制类型转化 [1.3.5节naughty pointer]

 指针/Address在被解析的时候所依据的信息指针的类型

 得到freedom任意M的访问权and解释权

 方法 *and type casting

 举例具体见1.3.5节

10.威力所在之二指向代码后修改代码

11.数组的存放

 连续递增空间

12.数组的访问都没有边界检查越界后的R/W的危险

 下标法

 指针法可行性原因指针的算术运算

 难点数组and指针的关系and区别

 相同的前提

 效率低了 【可以通过汇编code对比发现之】

13.利用数组的指针来进行赋值 的语义 c语言没有真正的数组

14二维数组

 存放 row-major order的连续存放理解其的一个思维角度

 访问

 下标法

 指针法

15.C语言中的字符串

 以NUL结束的字符数组固定长度有库函数printf(), strc at(),and strncmp()等的支持

 有长度 因为有边界但是没有边界检查

 访问方法and边界检查 同数组

 使用字符串常量容易犯的一个error Textbook的2.4.1.4节

16.结构的存放

 对齐

17.结构的访问

 名字法

 指针法

18.对齐

 含义 padding

 原因空间换时间和CPU访问M的总线宽度相关 存在于局部变量的Stack Heap空间

 表现结构内部VS结构外部

 CPU相关有的是必需的有的是一种优化

对齐的多角度理解汇编级别VS C语言级别

HostYun(月18元),CN2直连香港大带宽VPS 50M带宽起

对于如今的云服务商的竞争着实很激烈,我们可以看到国内国外服务商的各种内卷,使得我们很多个人服务商压力还是比较大的。我们看到这几年的服务商变动还是比较大的,很多新服务商坚持不超过三个月,有的是多个品牌同步进行然后分别的跑路赚一波走人。对于我们用户来说,便宜的服务商固然可以试试,但是如果是不确定的,建议月付或者主力业务尽量的还是注意备份。HostYun 最近几个月还是比较活跃的,在前面也有多次介绍到商...

CheapWindowsVPS:7个机房可选全场5折,1Gbps不限流量每月4.5美元

CheapWindowsVPS是一家成立于2007年的老牌国外主机商,顾名思义,一个提供便宜的Windows系统VPS主机(同样也支持安装Linux系列的哈)的商家,可选数据中心包括美国洛杉矶、达拉斯、芝加哥、纽约、英国伦敦、法国、新加坡等等,目前商家针对VPS主机推出5折优惠码,优惠后最低4GB内存套餐月付仅4.5美元。下面列出几款VPS主机配置信息。CPU:2cores内存:4GB硬盘:60G...

港云网络(¥1/月活动机器),香港CN2 4核4G 1元/月 美国CN2

港云网络官方网站商家简介港云网络成立于2016年,拥有IDC/ISP/云计算资质,是正规的IDC公司,我们采用优质硬件和网络,为客户提供高速、稳定的云计算服务。公司拥有一流的技术团队,提供7*24小时1对1售后服务,让您无后顾之忧。我们目前提供高防空间、云服务器、物理服务器,高防IP等众多产品,为您提供轻松上云、安全防护。点击进入港云网络官方网站港云网络中秋福利1元领【每人限量1台】,售完下架,活...

m空间为你推荐
支持ipad支持ipadnetbios端口怎么关闭8909端口!其他端口就不用了tracerouteping命令和traceroute(tracert )在功能上的区别有哪些?ipad连不上wifiiPad 连不上Wifi,显示无互联网连接ipad连不上wifiipad无法加入网络怎么回事iphone连不上wifi苹果手机无法连接wifi是什么原因canvas2动漫cv井口裕香,都有哪些作品?win7如何关闭445端口如何彻底永久取消win7粘滞键功能谷歌sbgoogle一下"SB",虽然显示的是baidu排第一,链接的不是baidu.
域名备案流程 新秒杀 息壤备案 香港cdn 圣诞节促销 北京主机 柚子舍官网 鲁诺 东莞idc 中国域名 免费php空间 xshell5注册码 magento主机 web是什么意思 dbank 装修瓦工招聘 sockscap下载 免费网络电视软件 厦门电信网上营业厅 北京摇号申请网站入口 更多