MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡
MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡
一、MCP协议技术详解
1.1 MCP协议的定义与起源
MCP(Modbus Communication Protocol)是一种基于主从架构的串行通信协议,最初由Modicon公司(现为施耐德电气旗下品牌)于1979年开发,用于工业自动化领域中的可编程逻辑控制器(PLC)通信。作为工业控制领域的”元老级”协议,MCP已经演变为工业物联网(IIoT)的基础通信标准之一。
MCP协议采用请求-响应的通信模式,具有简单、开放、可靠三大特性。它定义了消息结构、数据编码方法以及设备间建立连接和交换信息的规则,使得不同制造商生产的工业设备能够实现互操作。值得注意的是,MCP并非单一协议,而是包含多种变体的协议族,常见的有:
- MCP ASCII:基于ASCII字符格式
- MCP RTU:采用二进制编码,效率更高
- MCP TCP/IP:基于以太网的现代变种
1.2 MCP协议的工作原理
1.2.1 协议栈结构
MCP协议栈采用分层设计,与OSI模型对应关系如下:
+---------------------+
| 应用层 (MCP PDU) | ← 包含功能码和数据
+---------------------+
| 传输层 (协议头) | ← 地址域和校验码
+---------------------+
| 物理层 (RS-485/TCP) | ← 物理传输介质
+---------------------+
1.2.2 通信流程示例
典型的MCP通信流程包含以下步骤:
- 主站发起请求:主设备发送包含从站地址、功能码、数据域和CRC校验的帧
-
- 示例:
[地址][功能码03][起始地址Hi][起始地址Lo][寄存器数量Hi][寄存器数量Lo][CRC Lo][CRC Hi]
- 示例:
- 从站响应:目标从设备处理请求后返回数据
-
- 成功响应:
[地址][功能码03][字节计数][数据1...数据N][CRC Lo][CRC Hi]
- 异常响应:
[地址][功能码+0x80][异常码][CRC Lo][CRC Hi]
- 成功响应:
- 错误处理:CRC校验失败或超时未响应时,主站可重试请求
1.2.3 关键功能码解析
MCP协议通过功能码定义操作类型,主要分为四类:
- 线圈操作(01读线圈,05写单线圈,15写多线圈)
- 离散输入读取(02读离散输入)
- 保持寄存器操作(03读保持寄存器,06写单寄存器,16写多寄存器)
- 输入寄存器读取(04读输入寄存器)
这种设计使得MCP既能处理简单的开关量(线圈),也能传输复杂的模拟量(寄存器值)。
二、MCP背后的企业:施耐德电气与工业通信演进
2.1 Modicon公司的历史地位
1979年,美国Modicon公司(现为施耐德电气子公司)推出MCP协议时,工业自动化领域正面临设备互操作性的重大挑战。不同制造商的控制器使用专有通信协议,导致系统集成困难且成本高昂。MCP的开放特性打破了这一局面,其成功可归因于三个关键决策:
- 协议开源:不收取专利费用,鼓励广泛采用
- 硬件兼容:最初设计用于RS-232/RS-485等通用接口
- 简单可靠:采用主从模式降低实现复杂度
2.2 施耐德电气的持续演进
1996年施耐德电气收购Modicon后,对MCP协议进行了重要扩展:
- 1999年:推出MCP TCP/IP规范,适应工业以太网趋势
- 2006年:发布MCP安全扩展,增加TLS/SSL加密支持
- 2018年:推出MCP over UDP,满足实时性要求更高的场景
据施耐德2022年工业通信报告显示,全球部署的MCP兼容设备已超过4000万台,其中约35%运行在现代TCP/IP变种上。该公司通过ConneXium产品线提供完整的MCP解决方案,包括协议转换器、安全网关和开发工具包。
三、MCP协议的典型应用场景
3.1 工业自动化控制系统
在汽车制造生产线中,MCP协议典型应用包括:
- PLC间通信:多个PLC通过MCP TCP/IP同步控制信号
- HMI数据采集:人机界面读取分布在车间的500+个传感器数据
- 远程监控:通过MCP网关将现场数据传输到SCADA系统
某德国汽车厂商的案例显示,采用MCP over TLS的方案后,其车身焊接线的通信延迟从120ms降至40ms,同时满足了IT安全部门的新要求。
3.2 智能楼宇管理系统
现代智能楼宇中,MCP协议常用于:
- HVAC控制:调节空调机组运行参数
- 能源监测:实时采集电表数据(每15分钟读取一次寄存器值)
- 照明系统:通过线圈控制照明回路开关
新加坡某商业综合体采用MCP RTU连接3200个终端设备,相比传统BACnet协议节省了28%的布线成本。
3.3 新能源监控系统
在光伏发电站中,MCP协议的应用特点:
- 逆变器通信:读取发电功率、电压等关键参数(功能码04)
- 电池管理:写入充放电控制指令(功能码16)
- 数据聚合:通过MCP网关将多个从站数据汇总上传
美国某200MW光伏电站使用MCP TCP协议,实现了500ms级的设备状态刷新率,远超传统SCADA系统的5秒间隔。
四、MCP协议的核心技术优势
4.1 协议核心特性矩阵
特性 | 技术实现 | 业务价值 |
轻量级帧结构 | 最小帧长仅12字节(RTU模式) | 适合低带宽网络 |
确定性响应 | 严格的主从时序控制 | 保证实时性 |
数据模型标准化 | 统一的寄存器/线圈地址空间 | 简化系统集成 |
错误检测机制 | CRC-16校验+异常响应码 | 工业级可靠性 |
传输介质无关性 | 支持RS-485/TCP/UDP等多种物理层 | 适应不同场景 |
4.2 与同类协议的比较
与OPC UA、PROFINET等现代协议相比,MCP的独特优势体现在:
- 部署成本:无需专用硬件或授权费用
- 遗留系统支持:兼容过去40年的老设备
- 诊断简易性:可通过简单工具解析通信报文
但同时也存在局限性:
- 缺乏原生对象模型支持
- 安全机制需要额外扩展
- 不适合大数据块传输
五、物联网时代的MCP:卓伊凡的实践思考
5.1 星云智控系统的现状
优雅草科技CTO卓伊凡近期开发的星云智控系统是面向工业物联网的实时监控平台,目前采用SNMP协议连接各类传感器和设备。SNMP的优势在于:
- 广泛的网络设备支持
- 成熟的管理信息库(MIB)标准
- 适合读取静态配置信息
但在实际部署中,团队发现SNMP存在明显不足:
- 写操作效率低:Set请求的响应时间不稳定
- 实时性局限:Trap机制不适合高频数据采集
- 数据处理复杂:需要繁琐的OID转换
5.2 向MCP迁移的技术评估
卓伊凡团队正在评估将底层协议迁移到MCP的可能性,初步分析显示:
优势方面:
- 性能提升:MCP读取100个寄存器仅需1个请求,而SNMP需要多个Get请求
- 确定性延迟:测试显示MCP TCP的95%分位响应时间在50ms内
- 硬件兼容:现有80%的现场设备原生支持MCP RTU
挑战包括:
- 网络基础设施改造需求(部分节点需增加MCP网关)
- 安全机制需要额外部署(如IPsec隧道)
- 团队需要掌握新的调试工具链
5.3 混合架构的可行性方案
基于评估结果,优雅草科技提出了分阶段过渡方案:
Phase 1:协议并行期(6个月)┌───────────────┐ ┌───────────────┐│ 现有SNMP设备 │───▶│ 协议转换网关 │└───────────────┘ └───────────────┘│▼┌───────────────┐│ MCP骨干网络 │└───────────────┘Phase 2:逐步迁移期(12个月)- 新设备直接采用MCP接口- 关键路径设备优先改造Phase 3:优化整合期(持续)- 引入MCP安全扩展- 部署MQTT-MCP桥接器上云
该方案预计可使系统整体通信效率提升40%,同时将实时数据采集间隔从当前的5秒缩短至1秒以内。
六、未来展望:MCP在工业互联网中的新角色
随着工业4.0推进,MCP协议正在经历新一轮进化:
- 时间敏感网络(TSN)支持:IEEE 802.1工作组正在制定MCP over TSN标准
- 5G融合应用:中国移动已试点基于5G URLLC的MCP传输方案
- 边缘计算集成:施耐德最新发布的EcoStruxure平台支持MCP到OPC UA的自动转换
卓伊凡指出:”MCP的价值不在于技术先进性,而在于其无可替代的生态系统。就像TCP/IP没有取代HTTP一样,未来工业互联网仍需要MCP这样的基础层协议。”优雅草科技的计划是保留SNMP用于网络设备管理,同时在过程控制层全面转向MCP,构建分层异构的通信架构。
这种务实的技术路线,或许正是MCP协议历经40余年仍保持活力的最佳注解——在追求技术创新的同时,尊重工业领域对稳定性、可靠性的核心诉求。
相关文章:
MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡
MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡 一、MCP协议技术详解 1.1 MCP协议的定义与起源 MCP(Modbus Communication Protocol)是一种基于主从架构的串行通信协议,最初由Modicon公司(现为施耐德电…...
IOS 国际化词条 Python3 脚本
一、词条处理脚本---使用教程 (1)环境篇 1: 该脚本基于python3 环境,请确保你的mac 安装了python3 2: 包依赖,请在python3环境下安装 xlrd; pip3 install xlrd(2)使用篇 1: 桌面创建一个文件夹, 例如 wordEntry,将该脚本文件与下载的最新的 ’词条.xlsx‘…...
uniapp 支付宝小程序自定义 navbar 无效解决方案
如图: uniapp编译到支付宝小程序隐藏默认的导航栏失效了 解决方案: 在 pages.json 文件中找到 globalStyle 中加入以下代码: "mp-alipay": {"transparentTitle": "always","titlePenetrate":…...
uni-app - 微信小程序中,使用 navigateTo 传递非常大的数字传参精度丢失的问题
文章目录 🍉原因分析:JavaScript 数值精度限制🍉常用解决方法🍉代码示例🍉官方推荐与最佳实践🍉微信小程序环境注意事项🍉原因分析:JavaScript 数值精度限制 微信小程序(uni-app)中,参数是通过 URL 查询字符串传递的,其本质上仍由 JavaScript 进行处理。Jav…...
通信施工安全员B证适合哪些人考
通信施工安全员B证适合人群分析 一、适用岗位范围 通信工程施工人员 从事基站建设、光缆布放、管道施工等现场作业的技术工人 5G网络建设、室内分布系统安装等新型基础设施建设人员 项目管理岗位 通信工程项目经理、技术负责人 施工队长、班组长等现场管理人员 专职安全…...
vue3使用<el-date-picker分别设置开始时间和结束时间时,设置开始时间晚于当前时间,开始时间早于结束时间,结束时间晚于开始时间
vue3使用<el-date-picker分别设置开始时间和结束时间时,设置开始时间晚于当前时间,开始时间早于结束时间,结束时间晚于开始时间 为避免出现填写结束事件后再次修改开始时间,导致开始时间晚于结束时间,添加 change“…...
移远通信LG69T赋能零跑B10:高精度定位护航,共赴汽车智联未来
当前,汽车行业正以前所未有的速度迈向智能化时代,组合辅助驾驶技术已然成为车厂突出重围的关键所在。高精度定位技术作为实现车辆精准感知与高效协同的基石,其重要性日益凸显。 作为全球领先的物联网及车联网整体解决方案供应商,移…...
HTML应用指南:利用POST请求获取全国达美乐门店位置信息
达美乐比萨作为全球知名的披萨连锁品牌,自1960年创立以来,始终致力于为消费者提供高品质、快速配送的披萨体验。在中国市场,达美乐凭借其“30分钟必达”的承诺和经典美式风味,逐渐赢得了广大消费者的青睐。品牌通过不断拓展门店网…...
进程优先级以及切换调度
目录 进程优先级 基本概念 实操理解 优先级操作 竞争,独立,并行,并发 进程切换 寄存器 讲切换 linux进程调度算法 进程优先级 基本概念 cpu资源分配的先后顺序,就是指进程的优先权(priority)。优…...
揭开应用程序的神秘面纱:深入了解 AWS X-Ray
1.AWS X-Ray 概述: AWS X-Ray 是一项服务,它收集应用程序所处理请求的数据,并提供一些工具供您查看、筛选和深入了解这些数据,从而发现问题和优化机会。您不仅可以查看请求和响应的详细信息,还可以查看应用程序对下游…...
元宇宙2.0:当区块链成为数字世界的宪法
引言:当虚拟世界成为“新大陆” 清晨,你戴上VR设备进入一个由数字建筑构成的城市,这里的地皮属于全球玩家,街边的艺术品标着NFT认证码,咖啡馆里的人们用加密货币支付咖啡,而社区规则由持有代币的居民投票决…...
JVM调优实战(JVM Tuning Pactice)
JVM调优实战 JVM调优 JVM调优是指对Java虚拟机进行性能优化的实际应用。 JVM调优实战主要是通过优化JVM的内存管理、垃圾回收、线程管理、类加载、编译器等方面来提高Java应用程序的性能和稳定性。 JVM调优步骤 JVM调优实战通常需要经过以下步骤: 1.监控GC的状…...
网络原理 - 11(HTTP/HTTPS - 2 - 请求)
目录 HTTP 请求(Request) 认识 URL URL 基本格式 关于 URL encode 认识方法(method) 1. GET 方法 2. POST 方法 认识请求“报头”(header) Host Content-Length Content-Type User-Agent&…...
百度CarLife实现手机车机无缝互联
百度CarLife是百度推出的智能车联网解决方案,通过手机与车机互联技术,为用户提供安全便捷的车载互联网服务体验。 CarLife 实现手机与车机屏幕的无缝互联,让应用内容同步至车载系统,减少驾驶过程中操作手机的频率,提升…...
初识Redis · 缓存
目录 前言: 引入缓存 缓存更新策略 定期生成 实时生成 缓存注意事项 缓存预热 缓存穿透 缓存雪崩 缓存击穿 前言: 我们在Redis的学习中,逐渐了解到了Redis的用途是可以用来当作内存数据库,缓存,消息队列等&…...
Redis性能优化终极指南:从原理到实战的深度调优策略
一、内存优化:构建高效存储体系 1.1 三级过期键管理机制 Redis通过组合策略实现精准的内存回收: 定时删除(主动淘汰) 创建定时器在键到期时立即删除 优点:及时释放内存 缺点:高CPU消耗(每个…...
哈希表笔记(一 )
设计思路 核心功能和 API 设计 (Core Functionality & API Design): 基本操作: 必须提供核心的 put(key, value)(添加或更新键值对)、get(key)(根据键获取值)、remove(key)(根据键删除键值对)、contain…...
c网络库libevent的http常用函数的使用(附带源码)
Libevent HTTP 核心函数详解与实战 核心概念HTTP 服务器端常用函数1. 初始化与绑定2. 设置请求处理回调3. 在回调函数中处理请求4. 发送响应5. 启动与停止6. 清理资源 HTTP 客户端常用函数1. 初始化2. 创建连接3. 创建并发送请求4. 在回调函数中处理响应5. 启动事件循环与清理 …...
java练习3
随机生成20个数字(随机种子) 分别使用冒泡排序、二叉树排序、插入排序进行排序 并输出最终结果以及三种排序使用的时间 package a01_第一次练习.a03_排序;import java.time.Duration; import java.time.LocalDateTime; import java.util.TreeSet;publi…...
当 AI 成为 “数字新物种”:人类职业的重构与进化
一、AI 的 “替代清单”:从流水线到办公室的全面侵袭 在深圳某智能工厂,机械臂正以 0.01 毫米的精度完成手机组装,100 台机器人 24 小时运转,替代了 3000 名工人。这种场景正在全球制造业蔓延 —— 麦肯锡预测,到 203…...
HarmonyOS ArkUI交互事件与手势处理全解析:从基础到高级实践
文章目录 一、交互事件1.1 通用事件1.1.1 事件分发1.1.1.1 触摸测试1. 触摸测试基本流程2. 触摸测试控制3. 自定义事件拦截4. 禁用控制5. 触摸热区设置6. 安全组件 1.1.1.2 事件响应链收集 1.1.2 触屏事件1.1.3 键鼠事件1.1.3.1 鼠标事件1.1.3.2 按键事件 1.1.4 焦点事件1.1.5 …...
【计算机网络】面试常考——GET 和 POST 的区别
GET 和 POST 的区别 GET 和 POST 是 HTTP 协议中最常用的两种请求方法,它们的主要区别体现在 用途、数据传输方式、安全性、缓存机制 等方面。以下是详细对比: 1. 用途 GET POST 主要用于 获取数据(如查询、搜索)。 主要用于 提…...
AI编程工具“幻觉”风险与飞算JavaAl的破局之道
近年来,AI编程辅助工具迅速崛起,极大地提升了开发者的工作效率。然而,这些工具普遍存在一个被称为“幻觉”(hallucination)的风险——AI可能会生成看似合理但实际错误、不安全或低效的代码。这种现象在复杂业务逻辑和特定领域开发中尤为明显&…...
【Python零基础入门系列】第1篇:Python 是什么?怎么装环境?推荐哪些 IDE?
各位网友们,欢迎来到我的 Python 学习专栏! 前两天看到新闻英伟达为 CUDA 添加原生 Python 支持,意味着开发者可直接用 Python 操作 GPU,加速 AI 和高性能计算,降低门槛,让 Python 的应用范围更广、能力更强。 一直想写一系列文章教知友们从零开始学会 Python 编程,目…...
VPN访问SAP组服务器报登陆负载均衡错误88:无法连接到消息服务器(RC=9)
用户反馈用SAPGUI接入SAP时报错:登陆负载均衡错误88:无法连接到消息服务器(RC9) 经了解是通过VPN访问,但VPN没有放行ICMP访问,导致不能PING通,不能确认是网络问题还是什么问题。 解决方案: 1、VPN由原&am…...
Linux查看程序端口占用情况
大家好,欢迎来到程序视点!我是你们的老朋友.小二! 核心问题: Tomcat 8080端口启动失败,提示端口被占用,但常规检查未发现Tomcat进程占用该端口。 关键排查步骤: 初步检查 使用 ps -aux | gre…...
[C]基础14.字符函数和字符串函数
博客主页:向不悔本篇专栏:[C]您的支持,是我的创作动力。 文章目录 0、总结1、字符分类、转换函数2、strlen的使用和模拟实现2.1 strlen的使用2.2 strlen的模拟实现 3、strcpy的使用和模拟实现3.1 strcpy的使用3.2 strcpy的模拟实现 4、strcat…...
三种机器学习类型
本文讲介绍三种机器学习类型:①监督学习,②无监督学习,③强化学习。我们主要了解监督学习和无监督学习即可。 下图介绍这三种机器学习类型的区别: 1 用来预测未来的监督学习 从有标签的训练数据中学习一个模型,用来…...
UE5 Set actor Location和 Set World Location 和 Set Relative Location 的区别
在 Unreal Engine 的蓝图里,SetRelativeLocation、SetWorldLocation 和 SetActorLocation 三个节点虽然都能改变物体位置,但作用对象和坐标空间(Coordinate Space)不同: 1. SetActorLocation 作用对象:整个…...
Glide 如何加载远程 Base64 图片
最近有个需求,后端给出的图片地址并不是正常的 URL,而且需要一个接口去请求,但是返回的是 base64 数据流。这里不关心为啥要这么多,原因有很多,可能是系统的问题,也可能是能力问题。当然作为我们 Android 程…...
JVM对象存储格式
引言 在Java虚拟机(JVM)中,对象的内存布局是一个重要的底层概念,它直接影响对象在内存中的存储方式和占用空间。了解对象存储格式不仅有助于优化程序性能,还能帮助我们更好地理解JVM的工作原理。本文将详细探讨对象存…...
3D Gaussian Splatting部分原理介绍和CUDA代码解读
本系列旨在帮助无CUDA代码经验的读者、以及3DGS的初学者理解代码逻辑。 3D GS论文原文链接:https://arxiv.org/abs/2308.04079 论文笔记链接:【论文笔记】3D Gaussian Splatting for Real-Time Radiance Field Rendering 【论文笔记】A Survey on 3D Ga…...
日本IT行业|salesforce开发语言占据的地位
在日本的IT行业中,Salesforce 开发语言处于一个较为专业但稳步增长的细分领域,并不是主流开发语言(如 Java、Python、PHP),但其在某些行业和场景中地位越来越重要。 本篇以下是详细分析: Salesforce开发语言…...
1.1 点云数据获取方式——引言
图1-1-1点云建筑场景图 点云数据是指能够描述外部场景、对象表面的三维空间位置,并具有相关属性的点集,其每个离散点通常包括三维空间位置(x,y,z)以及强度、颜色等属性信息。大量分布的离散点集能够清晰而直接地描绘场景、对象的3…...
接入层架构演变
1、单体架构 请求过程 浏览器的请求通过 DNS Server 解析到指定的 IP 地址,浏览器通过 IP 地址访问 Web Server 缺点 当到达 Web Server 的性能瓶颈时(瓶颈受到CPU,内存,io,带宽影响),无法进…...
python:sklearn 主成分分析(PCA)
参考书:《统计学习方法》第2版 第16章 主成分分析(PCA)示例 编写 test_pca_1.py 如下 # -*- coding: utf-8 -*- """ 主成分分析(PCA) """ import matplotlib.pyplot as plt from skl…...
力扣-数据结构-二叉树
94. 二叉树的中序遍历 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root [1,null,2,3] 输出:[1,3,2]示例 2: 输入:root [] 输出:[]示例 3: 输入&#x…...
嵌入式音视频实时通话EasyRTC打造设备安装与调试的高效远程解决方案
一、背景 在数字化浪潮席卷全球的今天,实时音视频通信技术已经成为众多领域不可或缺的重要组成部分。从智能家居到智能安防,从在线教育到远程医疗,人们对于高效、便捷、稳定且低延迟的音视频通信解决方案的需求日益迫切。而EasyRTC作为一款卓…...
AI 的未来是开源?DeepSeek 正在书写新篇章!
AI 的未来是开源?DeepSeek 正在书写新篇章! 随着人工智能(AI)技术的迅猛发展,越来越多的企业和研究机构开始关注 AI 的开放性和透明度。开源不仅能够促进技术创新,还能加速知识的传播和应用。在这个背景下…...
抢先体验全新极小大模型Qwen3:0.6B
全民都在期待DeepSeek-R2的发布,但是一不小心被阿里截胡了,2025 年 4 月 29 日,阿里巴巴发布并开源了通义千问 Qwen3 系列大模型。据 大模型镜像网站 上关于Qwen3的介绍: Qwen3 是 Qwen 系列中最新一代的大型语言模型,提供一整套密集模型和混合专家 (MoE) 模型。Qwen3 基…...
部署一个自己的Spring Ai 服务(deepseek/通义千问)
Spring Boot 无缝接入 DeepSeek 和通义千问请求日志记录及其ip黑白名单 SpringBoot版本 3.2.0 JDK 版本为17 redis 3.2.0 mybatis 3.0.3 依赖引入 关键依赖 <dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-sp…...
第一讲 | 算法复杂度
算法复杂度 一、数据结构前言1、数据结构(DS)2、算法(Algorithm) 二、算法效率1、复杂度的概念 三、时间复杂度(1)、案例(2)、大O的渐进表示法(3)、时间复杂度…...
【运维】还原 Docker 启动命令的利器:runlike 与 docker-autocompose
🔍 还原 Docker 启动命令的利器:runlike 与 docker-autocompose 实用教程 在日常使用 Docker 时,我们常常通过 docker run 启动容器,但有时候过了一段时间就忘记了当初使用的具体参数(端口、挂载、环境变量等…...
IP属地是实时位置还是自己设置
刷微博、抖音时,评论区总能看到“IP属地”?这个突然冒出来的小标签,让不少网友摸不着头脑:IP属地是实时位置,还是可以自己设置?别急,今天咱们就来聊聊这个话题! 1、什么是IP属地…...
Android WIFI体系
先说说WifiLock、MulticastLock 、IWificond WifiLock 允许应用强制保持 WiFi 活跃,即便设备处于休眠状态。如WIFI_MODE_FULL_HIGH_PERF:保持高性能 WiFi 活跃状态,适用于高带宽需求,如视频通话、流媒体。经测试有的场景能减少10…...
什么是静态住宅ip,跨境电商为什么要用静态住宅ip
在数字时代,IP地址不仅是设备联网的“ID”,更是跨境电商运营中的关键工具。尤其对于需要长期稳定、安全操作的场景,静态住宅IP逐渐成为行业首选。 一、什么是静态住宅IP? 静态住宅IP(Static Residential IP࿰…...
常见位运算总结
目录 常见位运算总结 191:位1的个数 338:比特位计数 461:汉明距离 136:只出现一次的数字 260:只出现一次的数字III 常见位运算总结 191:位1的个数 链接:191. 位1的个数 - 力扣(LeetCode) class Sol…...
[密码学实战]SDF之对称运算类函数(四)
[密码学实战]SDF之对称运算类函数(四) 一、标准解读:GM/T 0018-2023核心要求 1.1 SDF接口定位 安全边界:硬件密码设备与应用系统间的标准交互层 功能范畴: #mermaid-svg-1jptduZFNFiRZ2lS {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16…...
【C++编程入门】:基本语法
上一篇提到了C关键字和缺省参数以及命名空间域,这篇继续分享C入门语法,把基本语法掌握扎实后面学习更才能更轻松一些。 目录 引用 引用的特性 常引用 内联函数 auto关键字 引用 引用不是新定义一个变量,而是给已存在变量取了一个别名&am…...
区块链最佳框架:Truffle vs Hardhat vs Brownie
区块链技术的快速发展使得智能合约开发成为主流,而选择合适的开发框架是提升效率的关键。目前,Truffle、Hardhat和Brownie是三大主流框架,它们各有特点,适用于不同的开发场景和开发者偏好。本文将从功能、生态系统、适用人群等角度…...