跳至主要內容

Kry Oxygen...大约 2 分钟

什么是状态机?

  • 定义:

    状态机状态寄存器组合逻辑电路构成,能够完成根据控制信号按照预先设定状态进行状态转移等特定操作的控制中心.

  • 分类:

    1. 输出只和状态有关而与输入无关,称为Moore状态机.
    2. 输出与状态和输出均有关,称为Mealy状态机.

BIOS和UEFI以及firmware

  • BIOS是一组固化到主板ROM上的程序,是众多firmware的一种.

  • UEFI和BIOS的区别:

    UEFIBIOS
    开发效率开源,标准接口,用C语言编写闭源,接口混乱,主要由汇编编写
    性能异步+时钟中断中断机制
    拓展和兼容性模块化驱动设计静态链接
    安全安全不安全
    其他支持大于2T的驱动器不支持大于2T的驱动器

静态加载和动态加载的区别

单步调试和单步跳过的区别

  • 单步调试: 当调用函数时,会进入函数内部,依次执行每条语句.
  • 单步跳过: 当调用函数时,不会进入内部,而是直接返回结果.

附加到进程

在工程比较庞大时,通过源代码调试会非常消耗时间,使用附加到进程的方法可以缩短调试时间和调试范围.

pragma once和ifndef的区别

  • ifndef支持更老的编译器,而pragma one则较新

头文件注意事项

  • 当一个文件引入了多个头文件,若有两个头文件中有相同名称的变量或类时,会在编译期报重定位错误。
  • inline函数的定义应该放在头文件中,与宏定义类似,inline需要在调用处被展开,所以编译器必须随处可见内敛函数的定义。
  • 预编译头:include了很多头文件的头文件,叫做预编译头。

为什么include不建议放在头文件中

C++命名方法

  1. 大驼峰命名法:每个单词首字母大写,StudioName
  2. 小驼峰命名法:第一个单词首字母小写,其余单词大写,studioName
  3. 下划线命名法:字母全小写,使用下划线连接,studio_name
  4. 匈牙利命名法:变量名=属性+类型+对象描述
    • 属性:g_全局变量,c_常量,m_类成员变量,s_静态变量
    • 类型:数组a,指针p,函数fm,空v,长整型l,布尔b,字符串str,字符c,整型n,计数cnt,无符号u等
    • 描述:首字母大写

typedef和typename关键字

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.6