一个ntohs函数的实现
来源:互联网 发布:仙剑4mac版怎么破解 编辑:程序博客网 时间:2024/06/11 09:42
众所周知ntohs用来将本机字节序列转换为网络字节序列,如何写一个高性能的实现呢?
先写一个能正常工作的:
代码如下
执行后与系统自带的对比性能,运行时间输出如下:
219
62
性能相差很多呀,看来得用汇编写个改进版本
运行结果如下:
188
62
性能有所改进,但与系统实现比较依然很慢,并没有显著改进性能,看来还得改进,应该是prolog代码和epilog代码所导致的性能不佳,
只好动用naked的了,将函数属性设置为naked。
运行比较
47
62
性能比系统的更好呀,my god :)
以上运行结果数据都是在debug版本下得出来的,release版本情况好像差不多,以上三种方式性能数据如下:
32
31
31
可见编译器的优化功能非常强大。
- 一个ntohs函数的实现
- ntohs函数的意思
- 模拟htonl、ntohl、htons、ntohs函数实现
- htonl、ntohl、htons、ntohs函数实现
- htonl、htons、ntohl、ntohs函数实现
- 【整理】htonl、ntohl、htons、ntohs函数实现
- htonl、ntohl、htons、ntohs函数实现
- htonl、ntohl、htons、ntohs函数实现
- htonl ntohl htons ntohs 函数实现
- htonl、ntohl、htons、ntohs函数实现
- 为什么需要htons(), ntohl(), ntohs(),htons() 函数 .模拟htonl、ntohl、htons、ntohs函数实现
- 为什么需要htons(), ntohl(), ntohs(),htons() 函数 .模拟htonl、ntohl、htons、ntohs函数实现
- htonl htons ntohs ntohl四个函数的粗浅理解
- 关于htons(),htonl(),ntohl(),ntohs()函数的备忘
- 使用宏模拟htonl、ntohl、htons、ntohs的实现
- ntohs的一个简单实现(将网络流中用两个字节16进制表示的资源数(如DNS)和长度转换为整形)
- htons(), ntohl(), ntohs(),htons() 函数
- htons(), ntohl(), ntohs(),htons() 函数
- jquery+ajax无刷新翻页
- JS-点击隐藏显示div里面的内容和改变左边icon
- 几种常见设计模式的使用
- 让浏览器弹出像FTP访问服务器一样的用户名和密码输入框
- 浅析:setsockopt()
- 一个ntohs函数的实现
- 敏捷开发中编写高质量Java代码
- ucenter 用户加密方式
- extern "C"
- FastCGI 不完全高级指南
- 使用snmp4j实现Snmp功能(二)
- 可以选择时间的日历控件js
- SQL语句查询是否为空 =null及null
- 电子政务的怪圈