引言 前面,我们用 [0] 、[bx] 的方法,在访问内存的指令中,定位内存单元的地址。这一章中,我们主要讲解一些更灵活的定位内存地址的方法和相关的编程方法。 我们的讲解将通过具体的问题来进行。 7.1 and 和 or 指令 7.2 关于ASCII码 7.3 以字符形式给出的数据 7.4 大小写转 ...
分类:
其他好文 时间:
2018-08-20 15:41:55
阅读次数:
170
在Java 中, 使用字符数组保存密码 比使用String保存密码更好. 两点理由 : 1. 很难从内存中清除. String 属于不可变对象, 他会被放到串缓冲池中以方便重复使用,所以它就可能在内存中被保留很长时间. 这时任何能够访问内存的人, 都可以很容易看到明文密码 当然, 根本就不应该使用明 ...
分类:
编程语言 时间:
2018-08-15 19:36:47
阅读次数:
172
1.Segmentation Fault是什么?什么情况下会导致它的出现?怎么解决? Segmentation Fault中文是段错误,在Linux系统中,段错误一般是是由用户程序非法访问内存引起的(访问指读、写或者执行),即程序访问的内存超出了系统所分配的内存空间,就会出现以上错误。段错误就是访问 ...
分类:
编程语言 时间:
2018-08-04 20:19:28
阅读次数:
145
1.主要思路 1.生产者发布任务时,指定properties,告知消费者处理任务完毕之后,将结果存储到reply_to指定的Queue中,本次任务的id是correlation_id 2.消费者消费完消息,即处理完任务,将结果存储到reply_to指定的Queue中,同时指定correlation_ ...
分类:
其他好文 时间:
2018-08-03 01:20:14
阅读次数:
196
远古时期的程序开发是直接操作物理内存的,CPU指令的操作数直接使用实地址(实际内存地址),程序员拥有绝对的权利,可以随意访问内存的任意一个地址,可以说是指哪打哪。 使用绝对的物理地址会带来很多问题,例如: 1、难以重定位,程序每次都需要同样地址的内存来运行。 2、给多道程序设计带来了障碍,也就是说, ...
分类:
其他好文 时间:
2018-07-18 20:46:30
阅读次数:
147
内核 操作系统是程序运行的环境,而内核是操作系统的核心,负责与硬件进行交互。如按下键盘,移动鼠标,网络传输,访问内存,磁盘等。 程序 程序是存储在计算机硬盘里的文件。是一系列基本指令,用于告诉操作系统做什么,何时去做,比如各种命令就是程序。 进程 当用户指示内核运行一个程序时,内核会从程序文件上读取 ...
分类:
系统相关 时间:
2018-07-14 10:56:47
阅读次数:
188
Linux非统一内存分发 目录 [显示] 传统SMP架构NUMA,非统一内存访问(Non-uniform Memory Access),介于SMP和MPP之间。在NUMA架构中,每一颗CPU被称为一个node,每个node之间的内存使用的独立的。每个CPU之间是绝对平等的,没有优先级之分,访问内存都 ...
分类:
系统相关 时间:
2018-07-10 13:43:30
阅读次数:
225
1.Redis预减库存减少数据库访问 2.内存标记减少Redis访问 3.请求先入队缓冲,异步下单,增强用户体验 4. Nginx水平扩展 5.数据库分库分表(阿里中间件mycat) 减少数据库访问: 1.系统初始化时,把商品库存数量加载到redis 2.收到请求,redis预减库存,库存不足,直接 ...
分类:
其他好文 时间:
2018-07-09 13:32:58
阅读次数:
170
8086的寻址方式CPU访问内存单元时,要给出内存单元的地址,所有的内存单元都有唯一的地址,叫做物理地址8086有20位地址总线,可以传送20位的地址,1M的寻址能力但它又是16位结构的CPU,它内部能够一次性处理、传输、暂时存储的地址为16位。如果将地址从内部简单地发出,那么它只能送出16位的地址,表现出来的寻址能力只有64KB8086采用一种在内部用2个16位地址合成的方法来生成1个20位的物
分类:
编程语言 时间:
2018-07-09 11:04:40
阅读次数:
148
CPU 访问内存时需要的是地址,而不是变量名和函数名!变量名和函数名只是地址的一种助记符,当源文件被编译和链接成可执行程序后,它们都会被替换成地址。编译和链接过程的一项重要任务就是找到这些名称所对应的地址。 ...
分类:
编程语言 时间:
2018-06-21 15:33:47
阅读次数:
167