社区
汇编语言
帖子详情
SSE2指令集的汇编,数据对齐的问题
jdgdf566
2018-09-15 11:53:31
C语言内联SSE2指令集的汇编,需要数据对齐。如果数据放在堆上而不是栈上,程序是否也能运行?会不会崩溃?
...全文
441
3
打赏
收藏
SSE2指令集的汇编,数据对齐的问题
C语言内联SSE2指令集的汇编,需要数据对齐。如果数据放在堆上而不是栈上,程序是否也能运行?会不会崩溃?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
日立奔腾浪潮微软松下联想
2018-09-17
打赏
举报
回复
需要16字节对齐的指令,movdqa、movaps之类,数据在哪都需要对齐,只不过在栈上更可能自然对齐,尤其编译为64位程序的情况下。
赵4老师
2018-09-17
打赏
举报
回复
搜“malloc对齐的内存”
zara
2018-09-17
打赏
举报
回复
需要对齐,跟数据在哪没关系吧。
汇编
SSE
2 指令简介
将源操作数(xmm2/m128)中的打包双精度浮点值转换为目标操作数(xmm1)中的打包单精度浮点值。用于将源操作数(xmm2/m64)中的标量双精度浮点值转换为目标操作数(xmm1)中的标量单精度浮点值,这个指令实现了将双精度浮点值转换为单精度浮点值的功能。使用imm8对xmm1和xmm2/m128中的两对双精度浮点值进行乱序处理,从每对值中进行选择,交织后的结果存储在xmm1中。将源操作数(xmm2/m128)中的每个字节与目标操作数(xmm1)中对应的字节相加,并将结果存储在目标操作数中。
SSE
2
指令集
系列之一
SSE
2与
SSE
1使用相同寄存器,指令描述约定: MM指64位MMX寄存器XMM指128XMM寄存器 m32 指32位内存变量m128指128位内存变量
SSE
2主要是双精度浮点运算指令 1.
数据
搬移指令 movapdXMM,XMM/m128 ...
C/C++
汇编
学习(三)——
指令集
-
汇编
基础
汇编
语言允许程序员直接操控硬件,理解和操作处理器的内部机制。这在系统编程、嵌入式系统、操作系统开发等领域非常重要。不过,由于
汇编
语言高度依赖于具体的硬件架构,因此通常不如高级语言(如C++或Python)那样具有可移植性。
第43部分-Linux x86 64位
汇编
SSE
2指令
第43部分-Linux x86 64位
汇编
SSE
2指令 SS2架构扩展了
SSE
指令。
SSE
2使用128位XMM寄存器保存2个双精度,4个双字整数值或者2个四字整数值。 传送
数据
提供了5条指令 处理
数据
SSE
2加法指令: 示例 .section .data .align 16 value1: .double 10.42, -5.330 value2: .double 4.25, 2.10 value3: .int 10, 20, 30, 40 value4:
SSE
2初学指南
Intro What is
SSE
2?
SSE
2 is an extension of a
sse
mbly language which allows programs to execute one operation on multiple pieces of data at a time. Because
SSE
2 is a
sse
mbly however, it only works
汇编语言
21,500
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章