- 博客(373)
- 资源 (16)
- 问答 (1)
- 收藏
- 关注
原创 语言的优先级
编译器和解释器会对源代码运算数和不同运算符的组合感到困惑,用优先级解决先算什么后算什么。相同优先级的组合也会让编译器困扰应该先做什么,结合性应运而生。
2024-09-18 19:11:24 600
原创 赋值运算符
赋值是编程语言基本操作,即便如此,赋值运算符也并不唯一。大部分编程语言”=”是赋值,”==”是相等。一个常见的疑问是,赋值运算符”=”和数学的相等是一个符号,这会产生误解吗?
2024-09-17 10:17:22 621
原创 语句结束符
这个话题听起来很简单,但不同编程语言的不同语法产生了五花八门的语句结束符。大部分编程语言以换行或者分号作为结束符,当然要排除有续行符的情况。
2024-09-17 10:15:43 647
原创 语言的新类型
编程语言默认提供的类型显然不能满足人类的需要,定义新类型是高级编程语言必须解决的事情。大部分编程语言提供形如结构体或者类,枚举也是一种简单的新类型。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-16 14:20:18 426
原创 语言的布尔类型
布尔是一位英国数学家,他很好地融合了逻辑运算和数学的关系。为了纪念他,用”布尔”表示逻辑的”真”和”假”。布尔类型最早是Algol 60提出。
2024-09-15 09:03:12 409
原创 32位和64位
一般而言,CPU位数是指CPU最轻松操作的寄存器大小。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。欢迎关注。助您在编程路上越走越好!
2024-09-15 09:01:26 350
原创 变量取值范围
通常意义上,任何一种类型都有自己的取值范围,但跟着变量类型本身的范围太大,有时,不希望取值有这么大,就可以定义枚举,但枚举也不是万能,能准确规定范围是更安全的选择。助您在编程路上越走越好!
2024-09-14 19:15:04 524
原创 语言中的复数
微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。科学计算中复数比较常见,编程语言对复数的支持方式不尽相同。助您在编程路上越走越好!
2024-09-13 19:14:27 393
原创 语言中的溢出
任何数据类型都有最大和最小值,会溢出是由物理特性决定。编译型静态类型语言一般明确定义类型大小,这种定义出来的类型都存在溢出的可能。有的动态语言为减少程序员溢出的困扰,尽可能为数据扩展成更大的数值,Python就是这样的好人。
2024-09-13 19:12:04 724
原创 语言中的浮点数
浮点数相比定点数或者整数,为了处理小数点引入了指数,导致小数点的位置根据不同浮点数而不同,故名为Floating Point Number. 一般而言,IEEE754标准被大部分编程语言的浮点数使用,它节省了浮点数的保存空间。如不然,浮点数可能按每一位ASCII码保存,包括整数部分、小数点和小数部分,占用空间不可控制。
2024-09-12 19:12:43 1204
原创 安全API
提到安全,大部分在学习和调试编程语言时并不太在意,真正爆发问题是在用户端。真正的安全漏洞是很可怕的,获取系统最高权限,获得敏感资讯,伤心不已,泪流满面。
2024-09-11 21:04:54 629
原创 字符串长度
字符串长度是一个很有意思的话题,基本整型或者浮点数长度一目了然,字符串因为独特的可变长度,研究它也是一个好话题。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-11 21:03:29 237
原创 语言的模块
提到模块,它是一个概念很广的名词,在编程语言世界中,用它可代表一个独立的编程语言源代码或者其他形式的存在,可用于其他模块或者主程序使用。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-10 19:26:28 555
原创 语言的智能指针
C语言完全靠人工,C#/Java/Python等更高级语言有GC,只有C++还在研究复杂的指针技术。这些指针技术听起来似乎已经没太大意义,但对于C++语言而言,意义深远,因为它真的再让程序员控制内存和对象释放。助您在编程路上越走越好!
2024-09-09 19:19:56 493
原创 成员函数重写
如果想常收到推文,请经常留言、点“在看”或将微信公众号设为星标。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-09 19:18:26 266
原创 socket 断线重连和心跳机制如何实现?
它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的 IP 地址,本地进程的通信端口,远程主机的 IP 地址,远程进程的通信端口。当服务端套接字监听到或者接收到客户端套接字的连接请求时,就会去响应客户端套接字的请求,建立一个新的线程,把服务端套接字的描述发 给客户端,一旦客户端确认了此描述,双方就正式建立连接。为此,客户端的套接字必须首先描述它要连接的服务端的套接字,指出服务端套接字的地址和端口号,然后就可以向服务端套接字提出连接请求。
2024-09-08 10:21:15 1216
原创 语言中的内联
爸爸为了培养孩子的独立能力,会把任务交给孩子并观察孩子做的结果。但有的时候,妈妈看到孩子因为完不成而伤心难过时,会毫不犹豫二话不说帮孩子的事情做掉。这也是内联。
2024-09-07 11:35:05 322
原创 如何保证 UDP 的可靠性传输?
这类似于TCP的确认应答机制,但是在应用层内实现的。UDP传输层是一种无连接的、不可靠的传输协议,无法保证数据的可靠传输,只能通过应用层来实现可靠性传输。当接收方来不及接收发送方发来的数据时,则会提示发送方降低发送的速度,防止包丢失。
2024-09-07 11:33:31 607
原创 语言的构造函数
OOP编程语言依赖构造函数,不同语言构造函数语法要求不太相同,但大同小异。构造函数和初始化函数很类似,看透了,就是类似C语言初始化一个结构体变量。
2024-09-06 19:38:30 543
原创 左值和右值
计算机硬件结构存在取数据和存数据,取数据是从一个地址读,存数据是向一个地址写。一般而言,有地址能被写的就在赋值表达式的左侧,被称为左值(l-value), 其它的被称为右值(r-value). 大部分编程语言都有左值和右值的概念。C++的左值和右值概念是最复杂的。
2024-09-06 19:36:28 320
原创 反射: 获取变量类型
更高级的编程语言,提供反射、解释机制,获取对象类型非常方便,因为运行时保存有对象的全部信息,也包括类型,而对于编译型语言而言,变量类型要靠编译期或构造/依赖类型某个存储类型的结构。
2024-09-05 19:12:03 306
原创 语言的自动类型
编程语言为了方便,会默认建立一套变量默认类型机制。更高级的编程语言或脚本语言为了简化,可能引入自动类型。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-05 19:11:04 465
原创 语言中的类型转换
编程语言中必然有很多情况需要转换类型。比如引入const的概念就为了提高安全性,编译器提前检查,避免一些意外修改。当然,有时,我们希望手动转换一个变量的类型,让其变成常量,可以利用编译器提供的cast方法。
2024-09-04 19:22:59 612
原创 编译器和语言标准
编译器随着编程语言新标准而不断更新,历史的长河可能会淹没很多故事,但必要的时候,回忆起编译器版本和编程语言标准,不失一件有趣的事情。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-04 19:21:15 583
原创 编译器/解释器用什么语言编写?
一般而言,语言A诞生之初,一定是已存在的另外一种语言写它的编译器,等编译器完成后,就可以用语言A本身写它的编译器。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!
2024-09-03 19:18:37 1295
原创 函数重载的奥秘
现实世界中”重载”无处不在,”某某可以做,这里为什么不可以做”不断告诉我们,人类从来都喜欢follow一些规则,不愿意改变。函数重载不是重载的全部,运算符一样可以重载。
2024-09-03 19:17:02 492
原创 语言中的属性
属性对于C语言之前的编程语言比较陌生,C++之后的编程语言更多会采用。编程语言的属性分为两种:一种是成员变量的外在特性,一种是给编译器提供的可选信息。
2024-09-02 19:05:47 444
原创 类型最大值和最小值
每种类型都对应于原始的存储位数,也就间接产生了最大和最小值。水满自溢同理。对于一些复合类型,比如封装的字符串,利用堆空间并可以自动增大,理论上长度可以无限,受限于计算机硬件内存和长度变量类型。
2024-09-01 11:16:29 270
原创 Https 加密原理
1)CA 证书中的 数字签名Hash值,就是用证书的私钥进行加密后的值(证书的私钥不在 CA 证书中,证书的公钥在CA证书中)。加密用的密钥和解密用的密钥是同一个,比较有代表性的是 DES和AES 加密算法。
2024-09-01 11:14:54 1173
原创 HTTP 缓存
1.需要服务端参与判断是否继续使用缓存,当客户端第一次请求数据时,服务端会将缓存标识(Last-Modified/If-Modified-Since 与ETag/If-None-Match)与数据一起返回给客户端,客户端将两者都备份到缓存中 ,再次请求数据时,客户端将上次备份的缓存标识发送给服务端,服务端根据缓存标识进行判断,如果返回HTTP状态码 304(Not Modified ,请求的资源自上次请求以来没有被修改),则表示客户端可以继续使用缓存。若资源已修改,则返回200状态码和新的资源内容。
2024-08-31 11:32:49 818
原创 语言的数据访问
基本数据类型的访问很简单直接,利用变量名即可。数组或字符串的访问方式加下标,结构体和类对象指定成员名,当然要考虑private或protected访问权限。
2024-08-30 19:28:19 1126
JESD209-5-LPDDR5-注释解读v1
2024-07-04
JESD209-4B-LPDDR4 注释解读 v3
2024-07-04
DRAM技术精解(第三版 中文)
2024-07-04
JESD209-4B-LPDDR4 中文解读 v2.3
2022-10-23
DRAM技术精解(第三版 中文) DDRX LPDDRX
2022-10-23
JESD209-5_4_3 LPDDR5 LPDDR4 LPDDR3精解
2022-03-12
JESD209-4_3 LPDDR4 LPDDR3精解.pdf
2021-12-12
JESD209-3 LPDDR3精解.pdf
2021-11-26
JESD79-5_4_3 DDR5 DDR4 DDR3精解.pdf
2021-11-21
JESD79-4B DDR4 JESD79-3F DDR3 精解.pdf
2021-11-16
JESD79-3 DDR3 Technology.pdf
2021-11-13
JESD79-3 DDR3精解.pdf
2021-10-25
JESD79-4 DDR4解读.pdf
2021-10-13
DRAM技术精解(中文) DDR3-DDR4-DDR5-LPDDR3-LPDDR4-LPDDR5.pdf
2021-10-02
Android十年终极开发经验_助您不走弯路_快速晋级Android架构师
2021-08-08
JESD209-4C LPDDR4解读.pdf
2021-08-01
JESD79-3F_DDR3 中文注释解读 v3.pdf
2021-07-18
JESD79-E_DDR 中文注释解读 v2.2.pdf
2021-07-17
JESD209-4B_LPDDR4 中文注释解读.pdf
2021-06-18
DRAM Technology DDR3_DDR4_DDR5_LPDDR3_LPDDR4_LPDDR5技术精解.pdf
2021-01-31
DDR4为何没有类似LP3的CA training或者LP4的CBT?
2020-12-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人