4.华清嵌入式--基础知识小议

经过了两天的学习,我们要及时的回顾一下学的知识,今天主要说一些基础的知识,在之前的博客中也提到了一些linux相关的知识,这些基础知识比较琐碎,面试中也比较容易遇到,这里只是说一点,之后每遇到一点琐碎内容,都补充到本章中。

 

计算机基本结构

冯.诺依曼模型

计算机硬件5部分构成

输入设备,输出设备,存储器,运算器,控制器

MMU 内存管理单元

机器语言—》汇编语言—》高级语言

程序设计步骤

编辑(vi)—》编译(gcc),链接(ld)—》执行,调试

 

数据的表示

数值型数据和非数值型数据

 

数值数据的表示

十进制,二进制,十六进制,八进制

八进制以0开头,十六进制以0x开头。

2—》10进制

1010=1*2^3+0*2^2+1*2^1+0*2^0=10

 

16--》10

0xa6f=a*16^2+6*16^1+f*16^0=2671

 

原码 反码 补码

 

正数

负数

原码

00000101

10000101

反码

00000101

11111010

补码

00000101

11111011

负数:负数第一位为符号位。补码—》反码加1

-127 原码 1111 1111
反码 1000 0000
补码1000 0001
第一位为符号位,那么-128的原码是多少?
-128(特殊)无原码和反码,补码为1000 0000

 

字符数据通过ASCII码进行表示。

Man ASCLL 查询linux自带的ASCII码表

 

常用的ASCII:

字符0,对应48

A->65(ASCII)

a-->97(小写与大写差32)

大写字母+空格(32)=小写字母

这里会出题

例:u=’ ’+’B’

那么u是多少,也就是空格的ascII值+B的ASCII值=32+66=98

‘0’为字符0—》48(ASCII)

0=’0’-48 //字符0转化为数字0

 

GCC编译器

gcc -o hello hello.c(gcc hello.c -o hello -Wall)

-o输出可执行文件

./hello 查看输出结果

gcc test.c -wall 不指定默认生成a.out

 

目前使用的程序调试__FILE__,__LINE__,__FUNCTION__,

实现代码跟踪调试。文件名/行号/函数名(%s,%d,%s)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值