内存IC和CPU一样,也有大量的引脚,通过引脚来指定地址。这些引脚中,VCC和GND时电源,A0~A9时地址信号,D0~D7是数据信号。RD和WR是控制信号的引脚。+5V的直流电压表示1,0V表示0。
指针是指向内存中的地址,char* 和int*都是指向起始地址,char和int的区别就是他们占用的长度不一样。
负数采用补数的方法,符号位0表示正数,符号1时表示负数。1用二进制表示时是00000001,-1却不是10000001,而是11111111。这是因为做了一个补数的计算,能够让1+(-1)为0,。如何进行补数了。
00000001取反变成了11111110,然后再将取反的结果加1,则变成了11111111。二进制的1+(-1)就变成了00000001 + 11111111=00000000有人问前面的1哪里1去了。因为一位只有8个字节。高位被抹掉了,所以就实现了1+1 =0的效果。
CPU只有一套寄存器,在不同的进程之间切换时,要做好上下文的备份。
感觉信号量这东西还不是很懂啊,需要写段代码执行下才能搞清楚。
时间: 2024-10-13 22:03:04