精华内容
下载资源
问答
  • 进入智能专业的第个实验,开始写博客来记录一些知识总结和注意吧。下面的内容主要是按照教材的板块来划分,每个标题下面总结了该部分的一些知识的梳理,希望能对看到的人有点点帮助,也给自己个记录的地方...

    30天自制操作系统-day01

    从计算机结构到汇编程序

    进入智能专业的第一个实验,开始写博客来记录一些知识总结和注意点吧。下面的内容主要是按照教材的板块来划分,每一个标题下面总结了该部分的一些知识点的梳理,希望能对看到的人有点点帮助,也给自己一个记录的地方吧。

    先动手操作

    二进制编辑器(BZ)
    用来对二进制数进行直接编辑的软件。打开BZ后直接输入二进制代码即可。以下为几种基本操作:
    “00”的多数输入:选中一部分“00”,edit-copy,进行复制粘贴完成。
    保存文件:file-save as,推荐保存为.img格式。完成软盘映像文件的制作。
    打开文件:file-open。(如果要编辑打开的文件,则选择edit-read only,进入编辑模式)。
    向磁盘写入映像文件的准备-tolset
    tolset包含了一些后期开发中需要用到的工具,具体使用如下:
    1、在tolset文件夹下创建新的操作文件夹,命名清晰(如示例helloos0)。
    2、将之前保存的映像文件(.img)放入该文件夹下,并将tolset下的z_new_w的子文件夹中的!cons_9x.bat和!cons_run.bat两个文件复制到刚刚新建的文件夹中。
    3、该文件夹下创建文本文件,并将后缀改为.bat,并编辑输入以下内容:
    Copy helloos.img …\z_tools\qemu\fdimage0.bin
    …\z_tools\make.exe -C …/z_tools/qemu
    同样的步骤创建install.bat,并输入:
    …\z_tools\imgtol.com w a: helloos.img
    测试操作系统软件的PC模拟器-QEMU
    电脑没有安装软驱,且购买软盘不方便,所以采用QEMU这一PC模拟器来运行写好的类似操作系统的这个软件,具体操作如下:
    QEMU的打开运行:打开事先复制入文件夹的!cons_9x.bat或!cons_run.bat文件,输入run指令即可。

    究竟做了什么

    这一部分主要对开发操作系统的原理进行了几方面的解释,具体内容如下:
    CPU到底能做什么
    CPU,即中央处理单元。只能与其他电路进行电信号交换,且对于电信号,只能理解ON和OFF两种状态,无法理解一些具象的事物,比如经常用到的文字、声音等。因此CPU只是负责执行电信号对应的指令,并对电信号进行输出。
    二进制数0和1
    0和1可以分别代表电信号中的OFF和ON,可以通过将文字等内容编码后转化为二进制,就能转化为CPU可以处理的电信号。软盘的原理也是如此,将0和1转化为磁极的N极和S极,因此只用0和1这样的二进制数字就可以写出映像文件。
    映像文件里面为什么不全是0和1
    编写时因为二进制表示位数过长,所以改用每四位转换为一个十六进制数的方式,缩短了代码的长度,降低了编写难度。计算机业界普遍使用十六进制数。

    初次体验汇编程序

    这一部分内容主要实践了如何完成一个汇编程序的编写,以下是编写过程中的一些注意问题及指令解读:
    汇编程序的书写及保存
    在编译器中书写完成的汇编代码呈现如下:
    汇编代码
    观察可以发现,汇编代码和之前书写的二进制代码的内容一致,但汇编代码前面有前缀0x-,二进制代码只有单纯的数字(数字前面加上0x就变成十六进制数,不加0x是十进制数)。但这种方法编写的程序长度太长,耗时且占用空间大。这就需要加入指令的使用来简化代码。
    汇编代码中的指令(部分)
    DB指令:define byte的缩写,往文件里直接写入1字节的指令。
    RESB指令:reserve byte的缩写,RESB 10这一指令的含义是:从现在的地址开始空出10个字节,且nask(编译器)会自动在空出的部分填充上0x00,这就极大的节省了输入大量0x00的时间。

    润色加工

    这一部分主要是将之前繁琐的代码进行润色和调整,使其可读性增强,更加清晰,教材中给出的示例代码如下:
    在这里插入图片描述
    在这里插入图片描述
    这一部分是标准FAT12格式软盘专用的一段代码。
    在这里插入图片描述
    这一部分是程序的主体部分。
    在这里插入图片描述
    以下给出几种指令的解释:
     DW:define word,16位
     DD:define double-word,32位
     (dollar符号):代表一个变量,表示这一行现在的字节数。例如程序中的语句:
    RESB 0x1fe-$
    因为在这一行之前已经输出了132个字节,因此这里的dollar符号代表132,所以该指令是在计算从此处到0x1fe处有多少字节,用RESB指令结合nask功能全部填充为0x00,实现了从当前位置到指定位置0x00的填充。
    采用dollar变量表示而不直接用数字表示的原因是,$是变量,可以表示任意位置之前的输出字节数目,因此可以进行任何位置上的该操作,只需一行相同的代码即可实现,比具体数字效率更高。

    创新设计

    尝试修改二进制代码中显示出来的文字部分内容,以达到修改程序运行后显示内容个性化的目的,具体操作及截图如下:
     修改二进制代码:
    通过查找ASCII码表,对照出想要修改文字的十六进制码,写入映像文件中,如下:
    在这里插入图片描述
     修改后运行测试结果如下:
    在这里插入图片描述
    在这里插入图片描述
    如图所示,修改成功。

    第一次开始写CSDN记录学习生活,希望以后可以在这里记下自己更多的学习经历,也希望这里可以记录自己的一次次进步和成长,所以就加油吧!

    展开全文
  • 2)个活动的最晚开始几天不影响,或者个活动可以耽搁的时间,是有公式计算的 3)关键路径为起点到终点权值加起来最大的路径 直接例题 首先,关键路径为最大(大)的总值,计算可以得到ABCEFJ=18,所以关键路径的...

    1)一个点的最早/最晚时间是有公式或者技巧求出来的

    2)一个活动的最晚开始几天不影响,或者一个活动可以耽搁的时间,是有公式计算的

    3)关键路径为起点到终点权值加起来最大的路径

    直接例题
    在这里插入图片描述

    首先,关键路径为最大(大)的总值,计算可以得到ABCEFJ=18,所以关键路径的值为18

    一、一个点的最早开始时间:从起点到该点的最长(大)的值
    • A:起点,最早开始时间为0
    • B:起点到B只有AB=2
    • C:起点到C只有ABC=2+3=5
    • D:起点到D只有ABD=2+2=4
    • E:起点到E只有ABCE=2+3+5=10
    • F:起点到F有ABCEF=13
      ABF=6
      ABDGF=13
      取最大,其中ABCEF和ABDGF一样值,所以F的最早开始时间为13
    • G:ABDG=7
    • H:ABCEH=12
    • I:ABDGI=13
    • J:J有H,F,I 这3个点到J,其中ABCEHJ=12+4=16
      0到F最大+<F,J>=13+5=18
      0到I最大+<I,J>=13+2=15
      取最大,所以J的最早开始时间为18

    二、一个点的最晚开始时间:关键路径的值 - 终点到该点的最大的值

    或者这样理解:关键路径的值 - 终点到该点的值,如果得到的有多个值,那么取最小

    MIN { 关键路径的值 - 终点到该点的值 }

    为了方便运算,求最晚的都是通过反方向来求的

    • J:0
    • H:重点到H只有JH,18-4=14
    • F:18-5=13
    • I:18-2=16
    • E:有JFE=8
      JHE=6
      有最晚开始时间MIN{ 18-8=10,18-6=12 }=10
    • G:有JFG=11
      JIG=8
      最晚开始时间 MIN{ 18-11=7,18-8=10}=7
    • C:因为已经求出E了,可以更简单地运算
      E的最晚开始时间 - <C,E>=10-5=5
    • D:G的最晚开始时间 - < D,G>=7-3=4
    • B:反方向回来的,有C和D两个点到B,则
      BC的方向:C的最晚开始时间 - <B,C>=5-3=2
      DB的方向:D的最晚开始时间 - <B,D>=4-2=2
      所以B的最晚开始时间为2

    三、活动的最长耽搁时间/最晚开始X天不影响整体=后继点的最晚-前驱点的最早-该活动的值

    比如

    • 活动BF最长耽搁时间=F的最晚-B的最早 - <B,F>=13-2-4=7
    • 活动BC最长耽搁时间=C的最晚-B的最早 - <B,C>=5-2-3=0

    其他的也一样,就不写了

    四、活动最迟(晚)应该在第X天开始(出发):关键路径-前驱点到终点的最小值

    或者说max{ 关键路径 - 前驱到终点的值}
    活动GI最迟应该在第X天出发?
    18-8=10,其中GIJ为 8 ,关键路径为18
    GFJ为11,则18-11=7,10与7取最大,则活动GI最迟应该在10天出发

    五、松弛时间

    松弛时间=关键路径的总时间-包含该任务的关键路径花的时间
    还有一种说法不知道对不对,松弛时间=前驱的最晚时间 - 前驱的最早时间

    展开全文
  • 所以活动前一天,行政姐姐再向每个人确认明天是否参加,做最后准备。到活动那天,参与者到行政姐姐那报道登记,才算是真正可以开始比赛。 看了一下知乎上的回答,真的搞笑,...
  • 他的建筑也全部被摧毁,只留下个克隆人士兵和个生化学家,不过敌人的有生力量也已经全部被剿灭, 头疼的是敌人留下了个艰固的要塞,要塞的血多得无法估计。 更糟的是逐青无法占领它,不知道到底需要多久,...
  • 考研计算机之线性表

    2019-06-15 09:44:07
    今年毕业了,前几天把该送的同学都送走了,今天开始我半年的刻苦修炼之旅。 线性表是考研数据结构必考的内容的,所以大家一定要好好的把这章的知识给掌握牢固了。关于线性表,我总结出两大必须掌握的非常重要的...

    今年打算考计算机的研究生,由于本科和计算机的专业相关所以学习起来不是那么的费劲。今年毕业了,前几天把该送的同学都送走了,从今天开始我半年的刻苦修炼之旅。

    线性表是考研数据结构必考的内容的,所以大家一定要好好的把这一章的知识给掌握牢固了。关于线性表,我总结出两大必须掌握的非常重要的两点,第一就是顺序表,第二就是链表。下面从这两个方面进行拓展。

     重点:

    1.顺序表的性质,以及查找,删除,插入操作所存在的弊端。

    重点:

    1.能够熟练的写出删除操作的步骤,按值查找的步骤。

    2.链表的优势和缺点。

    3.熟悉链表的头插法和尾插法的步骤。

    重点:

    1.掌握按序号查找结点的值,按值查找。

    2.插入操作,首先需要查找待插入节点的前驱节点。后插操作。

    重点:

    1.删除操作很重要。求链表的长度。

    2.双链表的性质,以及双链表的插入操作。

    重点:

    1.双链表的插入和删除操作。

    2.循环链表的定义。

    重点:

    1.循环双链表,静态链表的定义。

    2.顺序表和链表的比较。

    本人觉得能学好数据结构最重要的就是背概念和刷算法题,算法题的话推荐王道的考研资料。

    本人也是一个小菜鸡,好好加油吧。

     

    展开全文
  • 计算机实习日记

    2011-11-26 12:22:41
    上班第一天,没什么工作,老板和其他的工作人员都很忙,我也就知趣的找个地方呆着,开始翻阅着手头已经拿到的资料。刚来公司,自己就要机灵些,要谦虚好学,多去了解,要去观察去倾听,看忙着的人是怎样做事的,他们...
  • 本人计算机小白,今天开始整理一些小项目,方面对自己近几天的知识体系进行个梳理,同时也希望能够给大家一点微薄的帮助。 贪吃蛇作为入门级小型项目编程,实现较为简单,大致实现以下个模块 主要代码...

    本人计算机小白,从今天开始整理一些小项目,一方面对自己近几天的知识体系进行一个梳理,同时也希望能够给大家一点微薄的帮助。

    贪吃蛇作为入门级小型项目编程,实现较为简单,大致实现以下几个模块

     

    主要代码如下:

    // 贪吃蛇.cpp : 定义控制台应用程序的入口点。
    //
    #include"stdafx.h"
    #include<graphics.h>
    #include<iostream>
    #include"gotoxy.h"
    #include<windows.h>
    #include<conio.h>//Console Input/Output
    #include<time.h>
    using namespace std;
    char direction_a, direction_b;            //方向a、b,用于方向的限制 
    int scores, num, fool_x, fool_y, speed = 100;    //得分、num用于蛇身起步、食物x坐标、食物y坐标 
    bool e;                                //结束标记 
    struct node                             //蛇身结点 
    {
        int x, y;
        node *next;
    }*head = NULL, *p, *tail;

    void init();                            //初始化开始界面 
    void start();                            //游戏开始入场 
    void init_snake();                        //初始化蛇身 
    void delete_snake();                    //删除蛇身 
    void control();                            //方向控制 
    void move();                            //蛇身移动 
    void limit();                            //方向限制
    void panduan();                            //配合limit限制方向 
    void fool();                            //食物的出现以及食物被吞
    void isEnd();                            //结束判断 
    void zhuangwei();                        //撞尾判断 
    void zhuangqiang();                        //撞墙判断 
    //void jianbian();
    int main()
    {
        //initgraph(640, 480);
        //jianbian();
        srand((unsigned)time(NULL));//用系统时间使产生随机数,后面可以直接调用rand()
        init();
        cin >> direction_a;
        if (direction_a != 'y' && direction_a != 'Y')
            return 0;
        do
        {
            system("cls");                    //清除屏幕 
            e = false;
            start();
            delete_snake();
            init_snake();
            scores = 0;
            num = 0;
            fool_x = (rand() % (79 - 2 + 1)) + 2;
            fool_y = (rand() % (22 - 2 + 1)) + 2;
            gotoxy(fool_x, fool_y);
            cout << "#";
            direction_a = _getch();//从控制台读取一个字符,但不显示在屏幕上
            while (direction_a != 'd' && direction_a != 's'&&direction_a != 'w') 
                direction_a = _getch();
            while (true)
            {
                if (num&&direction_a != 'd' && direction_a != 's' && direction_a != 'w' && direction_a != 'a')
                {
                    direction_a = direction_b;
                }
                control();
                fool();
                Sleep(speed);
                if (_kbhit())                    //kbhit 非阻塞函数
                                               //   检查当前是否有键盘输入,若有则返回一个非0值,否则返回0。
                {
                    direction_a = _getch();    //使用 getch 函数获取键盘输入 
                    limit();
                }
                panduan();
                num = 1;
                zhuangqiang();
                zhuangwei();
                if (e) 
                    break;
            }
        } 
        while (direction_a == 'y' || direction_a == 'Y');
        return 0;
    }
    //void jianbian() {
        //initgraph(1080, 960);
        //while (!_kbhit()) {
            //for (int i = 0;i < 300;i++) {
                //Sleep(20);
                //circle(300, 300, i);
                //line(10, 10, i, i);
                //line(400, 400, 2 * i, 3 * i);
                //_getch();
                //closegraph();
            //}
        //}
    //}
    /*******************************************************
    **********************************
    **************************/
    void init()//初始化界面
    {
        gotoxy(35, 8);
        cout << "★贪  吃  蛇★";
        gotoxy(36, 10);
        cout << "开始请输入y:";
    }

    /**************
    ****************************************
    *****************************************************
    ****************************/
    void start()
    {
        for (int i = 0;i <= 79;i++)
        {
            Sleep(10);
            cout << "*";
            gotoxy(i + 1, 24);//调用头文件定义函数
            cout << "*";
            gotoxy(i + 1, 1);//顶部位置
        }
        gotoxy(1, 2);
        for (int i = 0;i <= 32;i++)//24
        {
            Sleep(20);
            cout << "*";
            for (int j = 0;j <= 77;j++)    //存在问题,中间残存一列未消除
                cout << " ";
            cout << " ";
        }
    }
    /*********************
    ******************************************************************

    *********************************/
    void init_snake()//初始化贪吃蛇
    {
        int n = 2;//初始节数
        head = new node;
        tail = head;
        head->x = 20;//产生位置
        head->y = 10;
        while (n--)
        {
            p = new node;
            tail->next = p;//初始化蛇身,y不变,横向产生蛇身
            p->x = tail->x - 1;//用到链表知识。
            p->y = tail->y;
            tail = p;
        }
    /****************************************************
    **********************************************
    ****用符号可视化蛇******************************/

        tail->next = NULL;//尾部置空。
        node *q = head->next;
        gotoxy(head->x, head->y);
        cout << '#'; //头
        while (q != NULL)//身子
        {
            gotoxy(q->x, q->y);
            cout << '*';
            q = q->next;
        }
    }


    /*********************************************************
    ***********************************************
    ***********************************/
    void delete_snake() //???
    {
        while (head != NULL)//从头删除
        {
            node *q = head;
            head = q->next;
            delete q;
        }
    }


    /********************************************
    **************************************
    *************************************************************
    **********************/
    void move()
    {
        gotoxy(tail->x, tail->y);//尾部擦除
        cout << " ";
        gotoxy(head->next->x, head->next->y);
        cout << '*';
        gotoxy(head->x, head->y);
        cout << '#';
        node *q = tail;
        tail = head;
        while (tail->next != q)
        {
            tail = tail->next;
        }
        tail->next = NULL;
        delete q;//与下面结合理解
    }

    /******************************
    *****************
    *****************************
    ***************/
    void control()
    {
        node *q = new node;//q为蛇头接下来运动到的点
        q->next = head;
        q->x = head->x;
        q->y = head->y;
        head = q;
        switch (direction_a)//原点位置为左上角
        {
        case 'w':    head->y--;break; //上减下加,左减右加
        case 's':    head->y++;break;
        case 'a':    head->x--;break;
        case 'd':    head->x++;break;
        default:    break;
        }
        move();
    }

    /***************************
    ***保持目前前进方向,执行相反方向是,不执行***
    **防止出现逆序死亡bug***/

    void limit()
    {

        if (direction_b == 's' &&  direction_a == 'w') direction_a = 's';
        if (direction_b == 'w' &&  direction_a == 's') direction_a = 'w';
        if (direction_b == 'a' &&  direction_a == 'd') direction_a = 'a';
        if (direction_b == 'd' &&  direction_a == 'a') direction_a = 'd';
    }


    void panduan()
    {
        if (direction_a == 's') direction_b = 's';
        if (direction_a == 'w') direction_b = 'w';
        if (direction_a == 'd') direction_b = 'd';
        if (direction_a == 'a') direction_b = 'a';
    }

    void fool()
    {
        node *q;
        if (head->x == fool_x  &&  head->y == fool_y)
        {
            fool_x = (rand() % (79 - 2 + 1)) + 2;//%width
            fool_y = (rand() % (22 - 2 + 1)) + 2;//%heighth
            gotoxy(fool_x, fool_y);
            cout << "#";
            num = 0;//??
            scores++;
            node *q = new node;//得分,尾部增长
            q->x = tail->x;
            q->y = tail->y;
            tail->next = q;
            tail = q;
            tail->next = NULL;
        }

        /**********************************
        *******************?????***/
        q = head;
        while (q != NULL)
        {
            if ((q->x == fool_x)&&(q->y == fool_y))//&
            {
                fool_x = (rand() % (79 - 2 + 1)) + 2;
                fool_y = (rand() % (22 - 2 + 1)) + 2;
                gotoxy(fool_x, fool_y);
                cout << "*";
                q = head;
                continue;
            }
            q = q->next;
        }
    }

    /********************************************
    ****************************
    ******************/
    void isEnd()
    {
        e = true;
        Sleep(600);
        system("cls");
        gotoxy(35, 8);
        cout << "您 输 啦 ~";
        gotoxy(33, 10);
        cout << "您的分数为: " << scores;
        gotoxy(31, 12);
        cout << "重新开始请输入y:";
        cin >> direction_a;
    }

    /*********************************
    ****************实际判断链表的头部是否和链表的子部分坐标相等*/

    void zhuangwei()//撞到身子
    {
        node *q = head->next;
        while (q != NULL)
        {
            if (head->x == q->x  &&  head->y == q->y)
            {
                isEnd();
                break;
            }
            q = q->next;
        }
    }


    /***************************************
    *********************判断链表头是否越界*/

    void zhuangqiang()  //撞到墙
    {
        if (head->x == 80 || head->x == 1 || head->y == 24 || head->y == 1)//
            isEnd();

    }

     

     

    添加头文件gotoxy.h

    #include<windows.h>
    void gotoxy(int x, int y)
    {
        COORD pos;
        pos.X = x - 1;
        pos.Y = y - 1;
        SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);//主要功能是在屏幕上出现字符

    }

     

     

    ps:还存在一些bug,希望大神勿喷

    展开全文
  • 几天从博客园看到篇博主的文章,批国内计算机图书肤浅、技术含量低下,自视为菜鸟的他表达了对国内计算机的劣质图书的厌恶程度,可想而知,国内计算机图书的质量确实值得质疑和思考?难道国内计算机图书真的有...
  • 计算机开机启动过程原理详解

    千次阅读 2013-08-12 21:02:19
    打开电源到开始操作,计算机的启动是个非常复杂的过程。  我一直搞不清楚,这个过程到底是怎么回事,只看见屏幕快速滚动各种提示...... 这几天,我查了一些资料,试图搞懂它。下面就是我整理的笔记。
  • Unix和Linux系统中都是1970年1月1号开始计算时间的,以秒为单位。虽然用秒作单位有点冗余,但是数学上却很简单。将日期转化为基准日期之后过了多少秒,然后再执行操作,这样就消除了随着日历
  • Unix和Linux系统中都是1970年1月1号开始计算时间的,以秒为单位。虽然用秒作单位有点冗余,但是数学上却很简单。将日期转化为基准日期之后过了多少秒,然后再执行操作,这样就消除了随着日历
  • 我在googlefoobar问题上工作了几天,除了个测试通过,我在这一点上陷入了困境。如果你有什么想法请告诉我!我使用了个描述了here的方法,我有个工作示例更换here。问题说明如下:世界末日燃料为LAMBCHOP的反应...
  • //行编号是0开始的 cursor.close(); 这种模式首先查出记录总数!然后计算分页信息。最后根据药抓取的第N页数据是否存在来决定是否去DB抓取数据。 1.我只想知道记录总数,不想抓取所有记录。 2.我只想抓取第...
  • 虽然没有按时完成作业,但这份报告花了我好几天的时间,从开始的搭建并行计算平台到最后的程序运行成功可以说是对我的个锻炼。每次的遇到问题与每次的解决问题都是个成长。每次遇到问题和解决问题都是种...
  • 几天深受《C++ Primer》困扰,昨晚看拷贝构造函数以及析构函数那块真是看到快哭了。所以今天找别的看看,缓解下因为看不懂Primer的书籍而带来的不快感。自然而然的,当年为了考研买的王道单科《数据结构》成了...
  • 虽然没有按时完成作业,但这份报告花了我好几天的时间,从开始的搭建并行计算平台到最后的程序运行成功可以说是对我的个锻炼。每次的遇到问题与每次的解决问题都是个成长。每次遇到问题和解决问题都是种...
  • #现在的学习开始逐渐偏离的按天的计算,以前一课可以通过一天的学习即可掌握,但是现在恐怕不行,有时候一个知识可能需要天来了解,那么我再按照第天来算是不是就有点不对等了呢?既然做了笔记,我觉得还是...
  • 开始写博客

    2007-04-07 23:33:00
    几天编译原理教员让我们写个简单的词法分析器,连知道怎么下手都不知道。也难怪,当年C语言边指针都没讲,学到函数课程就结束了,谁让咱学校这么烂呢。教员说他上本科时程序随便写就是千行,而我们大一到...
  • 软考----段旅程

    热门讨论 2016-11-14 08:59:05
    随着昨天的考试结束,软考这阶段的学习也告段落,从开始到现在五十的时间,经历了三个阶段视频、看书、做真题阶段,软考综合了计算机各方面的知识,刚开始的时候我们不知道如何复习,有些迷茫,找了个师哥...
  • 题源:POJ_1008_玛雅历 T1:给定第N天和每年有M天,确定是第年?...在计算年份之后,需再次进行取余,如果,余数为0的话,则可确定,这天是某年的最后一天,该对年份减1. T2:给定第N天和每月有M天,确
  • 0开始,老大确定了要使用的图计算框架,其余的,全都靠自己,由于毫无经验所言, 图谱的概念对我来说是新的,JanusGraph这个框架是新的,它所基于的TinkerPop没听过,拿来写入数据的语言java基本上也算是新的了...
  • 写下个注意记录下。要知道卡了 好久。 1.关于opencv中角度问题,逆时针方向的角度为正角度,顺时针方向的角度为负角度。 并且角度的起始边是垂直线开始,再到你的线的边。 我用的atan2计算的,但是怎么也...
  • 天一金融课堂 今天临近考试的这几天,很多考生开始担心自己不会使用电脑上的计算器做题,为解决大家的这些顾虑,小编特意总结了条机考...第二步,开始计算例如:计算16开4次方,先在计算器上出16,然后标红地...
  • CRC算法 个人学习笔记 直接法、查表法注意

    万次阅读 多人点赞 2017-12-09 17:00:09
    1、CRC算法会根据选择生成的检验码的长度,需要设置个生成多项式,一般会使用国际上个大厂或者行业内的常用的标准多项式,而且这些标准还有其他选项细微的差别, 比如初始值的设置、是数据的MSB/LSB开始计算、...
  • 3)使用cron做定时任务,每天进行数据抓取计算,每天18点开始进行数据计算计算当日数据,使用300数据进行计算,大约需要15分钟计算完毕。 4)股票数据接口防止被封,按进行数据缓存,储存最近3数据,每天...
  • <p><a href=...我相信中国有一天会同样有这么多优秀的工程人员,开发者,科学家,单手擎天的到干完活顺手拿个图灵奖的。 但肯定不是今天。肯定。</p>
  • 算法基础(

    2021-01-16 16:32:05
    博主这几天面试总会被问到算法相关知识,关键博主面试的是西安测试岗位,现在测试门槛都这么高了吗。。。各种手撕算法 所以下决心恶补一下数据结构,不定时更新,喜欢的胖友可以个关注哦~ 那就先最基本开始看...
  • 编程可谓是最令自己痛疼的事了,开学没几天,软件工程老师留给我们个编程作业。说真的一点思路也没有,说也可笑,居然会莫名的害怕,不过,自从下定决心学习计算机(前2年半一直在犹豫,很傻哦!)就决定一定要...
  • 国庆后面两在家学习整理了波flutter,基本把能撸过能看到的代码都过了遍,此文篇幅较长,建议保存(star)再看。传送门: ...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 195
精华内容 78
关键字:

一天从几点开始计算