分类: 码农 · Coder

  • Python: Comparison of Float

    Python中的floatint的大小比较相对于其他语言来说,实现上可能复杂一些。Python的float相当于C中的double,而Python的int实际上是由多个32位或64位整数拼接而成的高精度整数,其表示的精度和范围完全有可能比double类型更大。

    显然,(1)将浮点数转换成整数进行比较是不可行的,那样会丢失精度;而(2)Python中的整数是高精度整数,在内存足够大的情况下可以非常大,远大于double所能表示的范围;并且(3)C的long有63位精度,而double仅有53位,因此也不能仅因转换后的比较结果相等就判定转换前的数值也相等。

    (更多…)
  • 神奇的实训

    这次就不打算放具体细节和源代码了,因为这部分貌似不需要我们自己做(如果要的话再说)。

    所以怎么说好呢……总的来说,实训的前三天,是充实的,是辛苦的,是新鲜的。这三天最主要的事情就是对照老师给的图,自己在 Altium Designer 中将小车的红外探路这部分的原理图和线路板画出来,并且焊接好电子元件,在第三天验收。

    (更多…)

  • 在 Xcode 控制台中输入 EOF

    在终端(Terminal)中,我们可以使用组合键 control + D 来输入一个 EOF,但是此法在 Xcode 控制台中行不通。有两个在控制台输入 EOF 的方法。

    1. 按照顺序按下组合键 control + Q, control + D。
    2. 按下组合键 option + shift + /,此时控制台中会出现字符“¿”,回车即可。
  • Ubuntu 终端管理开机启动项

    编辑 rc.local 脚本:

    sudo vim /etc/rc.local

    若脚本已在 /etc/init.d 中且权限已设置为 755:

    #添加启动项,NN为启动顺序
    sudo update-rc.d ServiceName default NN
    #禁用启动项
    sudo update-rc.d -f ServiceName remove
  • Check the types of arguments in python

    def my_abs(x):
        if not isinstance(x, (int, float)):
            raise TypeError('...');
        elif x>0:
            return x;
        else:
            return -x;
  • The Overloading of Operator << and >>

    class String {
    public:
        friend ostream& operator<<(ostream&, const String&);
        friend istream& operator>>(istream&, String&);
        //other members
    private:
        char *str;
    };
    
    ostream& operator<<(ostream& os, const String& str){
        int i=0;
        while (*(str.str+i)!='
    class String {
    public:
    friend ostream& operator<<(ostream&, const String&);
    friend istream& operator>>(istream&, String&);
    //other members
    private:
    char *str;
    };
    ostream& operator<<(ostream& os, const String& str){
    int i=0;
    while (*(str.str+i)!='\0') os<<*(str.str + i++);
    return os;
    }
    istream& operator>>(istream& is, String& str){
    is>>str.str;
    return is;
    }
    ') os<<*(str.str + i++); return os; } istream& operator>>(istream& is, String& str){ is>>str.str; return is; }
  • MSP430F5529LP 开发实战(02)

    实验报告已经交上去了,接下来只要等分数就好。下面来看看贪吃蛇的代码实现,并不是很难,就不过多介绍了。

    (更多…)

  • MSP430F5529LP 开发实战(01)

    (姑且让我使用这一个土得掉渣的名字)


    下周的20号就是移动信息工程导论 Project 的 deadline。于是一鼓作气克服了种种困难,做出了一个贪吃蛇的小游戏。

    (更多…)

  • 果然还是太乃衣服……

    谁知道啊,模块和单片机之间的通讯还需要自己解码和编码……头都大了。明天打算研究一下单片机的串口输入输出。

  • 开始学习单片机开发

    上个月,学院给每个大一新生都发了一块德州仪器的 LaunchPad 单片机开发板,具体型号是 MSP430F5529。院长说这是德州仪器公司和我们学院达成的捐赠协议,德仪每年都会为新生免费提供一块这样的开发板(不过也没有以后了)。

    上周开始真正接触单片机开发,应该不算太难,但是需要学习的东西还是蛮多的。实现了简单的按钮控制 LED 的亮灭和 LED (交替)频闪。

    本月20日前需要提交一个利用此单片机开发的 Project,为此上网购买了多种传感器。开发日志将同步更新(我尽量)。