data

Array Access

基址+变址*len

image-20211214221922551

对应下一段代码

movl $0, %eax
jmp .L3
.L4:
addl $1, (%rdi, %rax, 4)
addq $1, %rax
.L3:
cmpq $4, %rax
jbe .L4
rep; ret
image-20211214222410246

Pointers & Arrays

cmp:能否编译

Bad:是否出现Bad Pointer Reference

image-20211214224823481

多级的Array访问:

image-20211214230446625 image-20211214230510779

Structure Representation

image-20211214232021323

为什么int是8个字节?

答:对齐的需要

image-20211214232347855 image-20211214232620994

在结构体中,K是所有元素中最大对齐元素的K,例如如果有double,那么K=8。

节省空间的方法:将大的元素先放,避免为了Alignment造成空缺

image-20211214233522441

ps:SSE3寄存器32bytes

https://zh.wikipedia.org/wiki/MMX

image-20211214233830642 image-20211214233807340

posted on 2022-05-13 21:37  Eddiewdy  阅读(436)  评论(0)    收藏  举报

导航