当前位置: 首页 > news >正文

上就是代码的解析,相信很多人疑惑的地方就是Vector128.Max做了什么,我们可以构造一个代码,让大家简单的看出来发生了什么。代码和运行结果如下所示:

/ 定义一个数组 var array = new int[] { 4, 3, 2, 1, 1, 2, 3, 4 }; // 拿到数组首地址指针 ref int current = ref MemoryMarshal.GetReference(array.AsSpan()); // 从首地址加载128位数据,上面是int32 // 所以x = 4, 3, 2, 1 var x = Vector128.LoadUnsafe(ref current); // 偏移128位以后,继续加载128位数据 // 所以y = 1, 2, 3, 4 var y = Vector128.LoadUnsafe(ref Unsafe.Add(ref current, Vector128<int>.Count)); // 使用Vector128.Max进行计算 var result = Vector128.Max(x, y); // 打印输出结果 x.Dump(); y.Dump(); result.Dump();


从运行的结果可以看到,result中保存的是xy对应位置的最大值,这样是不是就觉得清晰明了,Stephe大佬上文的代码就是做了这样一个操作。

同样,如果我们把int32换成int64,也就是long类型,由于一个元素占用64位,所以一次只能加载2个int64元素比较最大值,得出对应位置的最大值:

最后使用下面的for循环代码,从result中找到最大的那个int32元素,从我们上文的案例中就是4,结果和代码如下所示:

var value = result[0]; for (int i = 1; i < Vector128<int>.Count; i++) { if (value < result[i]) { value = result[i]; } }

http://www.jsqmd.com/news/1107060/

相关文章:

  • AI驱动的销售商机管理工具DingTalkA1实战解析
  • API 服务端数据库全表设计与 SQL 实现
  • QQ群聊天记录分析终极指南:三分钟解锁你的群聊数据洞察力
  • 计算机毕业设计之基于大数据加护的国产美妆行业发展状况研究
  • 多款远程桌面工具实测分享,谁才是打工人心中 TOP1?
  • AI Agent 开发实战:用LangChain4j构建你的第一个Java智能体
  • 无犯罪公证书在哪里办理?无犯罪公证书材料是啥?
  • 从小智停服说起:AI精神陪伴与社交产品硬伤分析
  • 从记忆到人格现行:我如何设计一个会“长出性格”的陪伴智能体
  • 天龙八部单机版GM工具终极指南:5分钟掌握游戏数据管理
  • 突破万亿Token!中国大模型“Token出海”大爆发,开发者如何搭上这趟红利快车?
  • GPT-5发布:当AI能操控你的整个桌面,运维还能信谁?
  • PDF 加盖骑缝章时如何使用数字签名
  • 基于 RBAC 的细粒度工具访问控制:MCP 权限模型与安全策略实施
  • ISO 13355:2016简单介绍,ISO 13355标准是啥
  • PvZ Tools:重新定义你的植物大战僵尸游戏体验
  • 游戏运营的核心资产:当玩家信任成为长线运营的胜负手
  • 数据库的种类
  • 2026 每日阅读|NEMAT:用 GROMACS 拆开膜蛋白药物亲和力的“障眼法”
  • 豆包怎么生成 Word 文档?Markdown 转 docx、表格和公式处理思路
  • 2026二三极管交易平台哪家好?5个核心判断标准
  • CBCX外汇平台结构表现会不会更省事?
  • [智能体-625]:OpenClaw(小龙虾)完整命令清单
  • 2026龙虾安装推荐实测榜单8款主流智能AI盘点:按需选型规避部署踩坑
  • 【CDA干货】什么人适合学统计学?高考志愿填报哪些院校值得选?就业情况怎么样?
  • AI重构地下检测行业:垂直大模型如何破解地下病害识别难题
  • 高安全行业音视频会议内网回撤转型
  • AI防爆摄像如何实时检测港口船体倾斜状态?
  • 用PIC微控制器驱动RGB灯带实现智能照明
  • 2026年南宁市第二届“邕城工匠杯” 数智化应用职业技能大赛 网络安全管理赛项技术文件