Articles Posted in the " " Category

  • 整数常量

    整数常量

    整数常数是可以在草稿码中直接使用的数字,像是 123;预设这些数字会被当做 int 资料型别,但是你可以将其更改为 U 和 L 型别 (在后面的说明中会提到)。 一般来说,整数常数前面若没有标示特别的符号,将被视为十进制整数。 进制 范例 格式 备注 10 (decimal) 123 无 2 (binary) B1111011 开头为 B 只能使用8位元 (0 到 255) 有效字元只有 0 跟 1 8 (octal) 0173 开头为 0 有效字元只有 0 到 7 16 (hexadecimal) 0x7B 开头为 0x 有效字元 0 到 9、A 到 F、a 到 f   Decimal […]


  • 常量定义 (constants)

    常量定义 (constants)

    常数在 86Duino 语言中是预先被定义好的变数,它们让程式码变得更容易阅读。 定义逻辑上的 true 和 false (布林常数) 86Duino 语言中有两个常数用来表示 真 或 假:true 以及 false false 在两者之中,false 较容易定义,它只要被定义为 0 即可。 true 通常 true 会被定义为 1 以表示 真,但事实上 true 拥有许多广泛的定义,任意一个非零的整数都可以为 true,所以 -1、2、-200,在布林逻辑上都会被定义为 true。 注意 true 或 false 是小写的,而不像 HIGH、LOW、INPUT、OUTPUT。 定义 pin 脚状态上的 HIGH 和 LOW 当读取或者写入GPIO pin 脚时只有两种设定值:HIGH 与 LOW。 HIGH HIGH 对于一个 pin 脚的意义,会根据其设定为 INPUT […]


  • 复合位元OR运算 (|=)

    复合位元OR运算 (|=)

    描述 复合位元运算 OR 运算子 (|=) 常用在配合常数 ”设置” 变数内特定的位元至 1。 语法 x |= y; // 等同于 x = x | y; 参数 x: 字元,整数或长整数型别变数。 y: 字元,整数或长整数型别变数。 范例 首先,复习位元运算子 OR(|)          0 0 1 1    运算子1          0 1 0 1    运算子2                   0 1 1 1    (运算子1 | 运算子2)       回传结果 […]


  • 复合位元AND运算 (&=)

    复合位元AND运算 (&=)

    描述 复合位元运算 AND 运算子 (&=) 常用在配合常数变换变数内特定的位元成 LOW 状态(变成 0),在程式撰写上又称为 ”清除” 或者 ”重置”。 语法 x &= y; // 等同于 x = x & y; 参数 x: 一个字元/整数/长整数型别变数 y: 一个字元/整数/长整数型别常数 范例 首先,复习位元运算 AND(&) 运算子          0 0 1 1    运算元1          0 1 0 1    运算元2                   0 0 0 1    (运算元1 & […]


  • += , -= , *= , /=

    += , -= , *= , /=

    描述 一个变数与常数或变数做数学运算。+= 运算符只是一个方便的扩展语法,如下所示。 语法 x += y; // 相当于 x = x + y; x -= y; // 相当于 x = x - y; x *= y; // 相当于 x = x * y; x /= y; // 相当于 x / y; 参数 x:任意变数型态 y:任意变数型态或常数 范例 语法参考主页面 本页由热血青年 LBU 译自英文版。 The text of the 86Duino […]


  • ++ (递增运算子) /  (递减运算子)

    ++ (递增运算子) / (递减运算子)

    描述 递增或递减一个变数 语法 x++; // x 增加 1 并回传旧的数值 ++x; // x 增加 1 并回传新的数值 x-- ; // x 减少 1 并回传旧的数值 --x ; // x 减少 1 并回传新的数值 参数 x: 一个整数或者长整数型态(可以用unsigned型态) 回传值 原始数值或是经过递增(递减)的数值。 范例 See also - += (compound addition) - -= (compound subtraction) 语法参考主页面 本页由热血青年 LBU 译自英文版。 The text of the 86Duino reference […]


  • 位元左移运算 (<<), 位元右移运算 (>>)

    位元左移运算 (<<), 位元右移运算 (>>)

    描述 C++ 有两个算术移位的运算子:左移位 >;该运算子的运算方式为向左或向右移动运算子左边的运算元所有位元,移动的位数由运算子右边的运算元决定。 更多的位元运算数学请参考 这里。 语法 variable > number_of_bits 参数 variable: 任一变数 (byte, int, long) number_of_bits: 一个小于 32 的整数 范例 当你对一个数值 x 左移位 y 个位元时 (x


  • 位元NOT运算 (~)

    位元NOT运算 (~)

    C++ 中位元补数运算 (NOT) 的符号以 ~ 表示,~ 不像 & 和 |,而是对运算子右边的单一运算元进行运算,位元补数运算会针对每一个位元进行二进制的补数运算,会将 0 转换成 1,1 转换成 0,请参考以下范例:          0    1      运算元1                   1    0      ~ 运算元1 你可能会惊讶于 103 经过补数运算的结果居然会是个负数 -104,这是因为 int 变数中最高的位元会被当作符号位元,当这个位元为 1 时表示该数为负数,这种编码方式又被称作二补数,详细资料可以参考维基百科的 二补数。 有意思的是,任一个整数 x,其 ~x 的结果就等于 -x-1。 这么看来,带有正负符号的整数有时会导致非预期的意外。 语法参考主页面 本页由热血青年 LBU 译自英文版。 The text of the 86Duino reference is […]


  • 位元AND运算 (&), 位元OR运算 (|), 位元XOR运算 (^)

    位元AND运算 (&), 位元OR运算 (|), 位元XOR运算 (^)

    位元运算子是用来计算变数的位元,它们可以帮忙解决各种常见的编程问题;更多有关位元运算的素材与教学可以参考这里。 描述和语法 下面是所有的运算子的语法还有说明,其他的细节可以在参考教学中找到。 位元运算 AND (&) C++ 中位元运算 AND 以单一符号 & 表示,用在两个整数之间,位元运算 AND 运算子会运算每一个位元位置上的值(0/1),依据固定的规则:若两者皆为 1 则输出是 1,其余状况输出皆为 0;请参考以下范例:         0 0 1 1   运算元1         0 1 0 1   运算元2                  0 0 0 1   (运算元1 & 运算元2)       回传结果 在 86duino 上 int 型别将是一个 32 位元的数值,所以用在两个 int 型别的变数上会产生 32 个 AND 运算去分别处理每个位元,像下面的程式码范例一样: 每一个 a 与 […]


  • 指标运算子: & (取址) 与 * (取值)

    指标运算子: & (取址) 与 * (取值)

    对于 C 语言的初学者来说,指标是比较复杂的课题之一,在绝大多数的 86Duino 草稿码中,你不会遇到指标。然而,对于操纵某些数据结构,指标的使用可以简化代码,操纵指标的知识可以让你在存取数据资料时变得很方便。 语法参考主页面 本页由热血青年 LBU 译自英文版。 The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.