C++笔记:4

计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。
在计算机系统中,数值一律用补码来表示和存储。
正整数的补码是其二进制表示,与原码相同.
求负整数的补码,将其对应正数二进制表示所有位取反(包括符号位,0变1,1变0)后加1。-5对应正数5(00000101)→所有位取反(11111010)→加1(11111011)

UNIX系统代码段和数据段分开的目的:
1)防止程序指令被修改,设置代码段权限为只读,设置数据段权限为可读写  
2)代码段和数据段分开有利于提高程序的局部性,现代CPU缓存一般设计为数据缓存和指令缓存分离,指令和数据分开存放可以提高CPU缓存命中率。
3)共享指令,当系统运行多个程序的副本时,它们指令是一样的,因此内存只需保存一份程序的指令代码。每个副本进程的数据区是进程私有,可以节省内存。

在UNIX中,$$、$@、$#以及$*的含义分别如下: 
$$表示当前命令的进程标识数。 
$*表示所有位置参量,例如$1、$2等。 
$@与$类似,但当用双引号进行转义时,”$@”能够分解多个参数,而”$“合并成一个参数。 
$#包括位置参数的个数,但是不包括命令名。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值