[juliantec_list] Re: 回复:Re: linux下语句creat(“foo”,S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP)中的S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP怎么来理解?

  • From: "Yihe Chen" <yihect@xxxxxxxxxxxxxx>
  • To: <hetao21182@xxxxxxxx>
  • Date: Thu, 4 Aug 2011 18:02:31 +0800


明白了,解释的很清楚,我对 | 这个符号一直不明白是怎么回事。


这个符号是"按位或"的意思。用二进制来举例:

1 | 0 = 1
0 | 1 = 1
1 | 1 = 1
0 | 0 = 0

所以,记成口诀就是“有一得一”。我们
嵌入式开发中经常用 | 来给某些寄存器的
位设为1,而不影响另外的位。原来的位是
什么值,就是什么值,不会改变。

假设八位积存器中原有的值是 0x49,我们
想把其中的第2、4、5共三位设置成1,那就
拿 0x34 去和它或一下,像这样:

0x49 | 0x34 = ?

写成二进制的运算过程就是这样:
    0100 1001
或上 0011 0100
---------------
    0111 1101

结果就是 0x7D,其中第2、4、5变成了1,
其他都没变。随便说下,二进制八位就是
一个字节,以后像碰到 0x23 这样的就是
一个字节的十六进制表示


另外,你还是没有用纯文本来发送和回复
邮件,看一下你的油箱如何进行设置的。
邮件列表可不欢迎 html 格式的邮件。



Learning, Just As Your Favourite Thing!

Maillist, See http://www.juliantec.info/mlist/mail-lists.html
JulBlog, See http://www.juliantec.info/julblog/summary.php
JulWiki, See http://www.juliantec.info/wiki/




Other related posts:

  • » [juliantec_list] Re: 回复:Re: linux下语句creat(“foo”,S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP)中的S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP怎么来理解? - Yihe Chen