第一章单片机的基础知识 第一节不同进位让数制及其互换 第二节带符号的二进制数 第三节BCD码及文字符号代码 第四节单片机系统的组成 第五节8051单片机的结构 第六节8051单片机的复位和低功耗工作方 Micro Controller Unit
第一章 单片机的基础知识 第一节 不同进位计数制及其互换 第二节 带符号的二进制数 第三节 BCD码及文字符号代码 第四节 单片机系统的组成 第五节 8051单片机的结构 第六节 8051单片机的复位和低功耗工作方 式
本章要点 本章主要介绍学习8051单片机所必须 的一些预备知识,包括三种进位计数制 间的互换、补码的基本知识。8051单片 机的基本结构,程序存储器、数据存储 器、特殊功能寄存器的组织方式,以及 8051单片机的复位工作方式和低功耗工 作方式
本章要点 • 本章主要介绍学习8051单片机所必须 的一些预备知识,包括三种进位计数制 间的互换、补码的基本知识。8051单片 机的基本结构,程序存储器、数据存储 器、特殊功能寄存器的组织方式,以及 8051单片机的复位工作方式和低功耗工 作方式
第一节不同进位计数制及其互换 二进制与十六进制的互换 二进制整数转换为十六进制数整数可从小数点开始 向左,每四位为一组转换为一位的十六进制数 二进制小数转换为十六进制数小数则从小数点开始 向右,同样以四位为一组,每四位小数转换为一位的 十六进制小数。 二进制六进制 十六进制整数转换为二进制数,则一位十六进制数 可转换为四位二进制数。 同样十六进制小数转换为二进制小数,也是一位十 六进制小数转换为四位二进制小数
第一节 不同进位计数制及其互换 一、二进制与十六进制的互换 二进制整数转换为十六进制数整数可从小数点开始 向左,每四位为一组转换为一位的十六进制数。 二进制小数转换为十六进制数小数则从小数点开始 向右,同样以四位为一组,每四位小数转换为一位的 十六进制小数。 十六进制整数转换为二进制数,则一位十六进制数 可转换为四位二进制数。 同样十六进制小数转换为二进制小数,也是一位十 六进制小数转换为四位二进制小数。 二进制 十六进制
二、二进制与十进制数的互换 二进制整数转换为十进制整数,可按各位数的权,即底数 为2的n-1次幂来确定,n表示该数的位数,例如二进制数为 1010101OB,则十进制数为: 1×2′+0×26+1×23+0×24+1×23+0×22+1×21+0×20=170 二进制整数 十进制整数 十进制整数转换为二进制整数,可采用逐次除以2,余数 反序排列,即第1次除以2的余数排在最低位。以25为例逐次 除以2列式如下: 25÷:2=12 余1 12÷2=6 余0 6÷2=3 余0 3÷2=1 余1 1÷2=0 余1 并按习惯将二进制数写成8位,可得25=00011001B
二、二进制与十进制数的互换 二进制整数 十进制整数 二进制整数转换为十进制整数,可按各位数的权,即底数 为2的n-1次幂来确定, n表示该数的位数,例如二进制数为 101010l0B,则十进制数为: 1 2 0 2 1 2 0 2 1 2 0 2 1 2 0 2 170 7 6 5 4 3 2 1 0 + + + + + + + = 十进制整数转换为二进制整数,可采用逐次除以 2,余数 反序排列,即第1次除以2的余数排在最低位。以25为例逐次 除以2列式如下: 25÷2=12 ……余1 12÷2=6 ……余0 6÷2=3 ……余0 3÷2=1 ……余1 1÷2=0 ……余1 并按习惯将二进制数写成8位,可得 25=0001100lB
二进制小数转换为十进制小数,可按底数为2的负n次幂 来确定,n同样表示位数,例如求0.0011001B的十进制值。 0×2-1+0×22+1×2-3+1×2-4+0×2-5+0×26+1×2-7+1×28=0.19921875 二进制小数 十进制小数 十进制小数转换为二进制小数,采用小数部分逐次乘2, 每次乘积若产生整数则将整数个位(即所为溢出位)按正序排 列,小数部分继续乘2。以0.6875为例。 其小数点右边数逐次乘2 0.68752=1.375小数点左边整数为1 0.3752=0.75 小数点左边整数为0 0.752=1.5 小数点左边整数为1 0.52=1 小数点左边整数为1 可得出 0.6875=0.1Ol0000B
二进制小数转换为十进制小数,可按底数为2的负n次幂 来确定,n同样表示位数,例如求0.00110011B的十进制值。 0 2 0 2 1 2 1 2 0 2 0 2 1 2 1 2 0.19921875 1 2 3 4 5 6 7 8 + + + + + + + = − − − − − − − − 十进制小数转换为二进制小数,采用小数部分逐次乘2, 每次乘积若产生整数则将整数个位(即所为溢出位)按正序排 列,小数部分继续乘2。以0.6875为例。 其小数点右边数逐次乘2 0.68752=1.375 ……小数点左边整数为1 0.3752=0.75 ……小数点左边整数为0 0,752=1.5 ……小数点左边整数为1 0.52=1 ……小数点左边整数为1 可得出 0.6875=0.1Oll0000B 二进制小数 十进制小数
十六进制与十进制数的互换 十六进制整数转换为十进制整数可按各位数的权,即底 数为16的n次幂来确定,n表示该数的位数。例如: 8A71H=8×163+10×162+7×16+1×160=354421 十六进制整数 十进制整数 十进制整数转为十六进制整数采用逐次除以16,余数 反序排列的方法。例如 13562÷16=84710(记作OAH 847÷16=52 余15(记作OFH) 52:16=3 余4 3÷16=0 余3 可得13562=34FAH
三、十六进制与十进制数的互换 十六进制整数转换为十进制整数可按各位数的权,即底 数为16的 n 次幂来确定, n表示该数的位数。例如: 8 71 8 16 10 16 7 16 1 16 354421 3 2 1 0 A H = + + + = 十进制整数转为十六进制整数采用逐次除以16,余数 反序排列的方法。例如: 13562÷16=847 ……余10(记作0AH) 847÷16=52 ……余15(记作0FH) 52÷16=3 ……余4 3÷16=0 ……余3 可得13562=34FAH 十六进制整数 十进制整数
十六进制小数转换为十进制小数,则按小数点以后各 位的权,用底数为16的负n次幂来确定,n同样表示位 数。 0.4AC9H=4×16-1+10×16-2+12×16-3+9×16-4=0.292129516 十六进制小数 十进制小数 十进制小数转为十六进制小数采用小数部分逐次乘16, 每次乘积若产生整数,则将所得整数按正序排列,例如十 进制小数0.359375转换为十六进制数: 0.359375×16=5.75 小数点左边整数为5 0.75×16=12.0 小数点左边整数为OCH 可得 0.359375=0.5CH 返回本章首页
十六进制小数转换为十进制小数,则按小数点以后各 位的权,用底数为16的负 n次幂来确定,n 同样表示位 数。 0.4 9 4 16 10 16 12 16 9 16 0.292129516 1 2 3 4 = + + + = − − − − AC H 十进制小数转为十六进制小数采用小数部分逐次乘16, 每次乘积若产生整数,则将所得整数按正序排列,例如十 进制小数0.359375转换为十六进制数: 0.359375×16=5.75 …… 小数点左边整数为5 0.75×16=12.0 …… 小数点左边整数为0CH 可得 0.359375=0.5CH 十六进制小数 十进制小数 返回本章首页
第二节带符号的二进制数 带符号二进制数的表示方法 原码表示法:规定最高位为符号位,其余 表示数值 反码表示法:规定最高位为符号位,对于 正数,其余各位表示数值。对于负数,其余 各位应将1换成0,将0换成1,即所谓逐位取 反 补码表示法:仍然规定最高位定为符号位, 对于正数,其余各位表示数值。对于负数, 除符号位外,其余按原码的各位值,逐位取 反,全部取反后再加1,简称为取反加1
第二节 带符号的二进制数 一、 带符号二进制数的表示方法 原码表示法:规定最高位为符号位,其余 表示数值。 反码表示法:规定最高位为符号位,对于 正数,其余各位表示数值。对于负数,其余 各位应将1换成0,将0换成1,即所谓逐位取 反。 补码表示法:仍然规定最高位定为符号位, 对于正数,其余各位表示数值。对于负数, 除符号位外,其余按原码的各位值,逐位取 反,全部取反后再加1,简称为取反加1
带符号二进制数表示方法举例 x为真值(x),为原码,(x)为反码(x),为补码 原码表示法 x=+1010101B(x),r=01010101B x=-1010101B(x)=11010101B 反码表示法 x=+1010101B(x)。c=01010101B x=-1010101B(x)。c=10101010B 补码表示法 x=+1010101B(x),=01010101B 1010101B(x)=10101011B 可见正数的反码和补码与原码完全相同
带符号二进制数表示方法举例: x B x B x B x B x x x x t f t f t f o c t c 1010101 ( ) 11010101 1010101 ( ) 01010101 : ( ) ,( ) ,( ) . . . . . = − = = + = 原码表示法 为真值 为原码 为反码 为补码 x B x B x B x B o c o c 1010101 ( ) 10101010 1010101 ( ) 01010101 : . . = − = = + = 反码表示法 x B x B x B x B t c t c 1010101 ( ) 10101011 1010101 ( ) 01010101 : . . = − = = + = 补码表示法 可见正数的反码和补码与原码完全相同
第三节BCD码及文字符号代码 BCD码 BCD码以4位为一组,选用0000B至1001B的十 种状态代表0-9共10个数,舍弃二进制表示法中的 其余6种状态。例如十进制数84.7的BCD码为: 84 10000100.01110000 BCD码10010100.01110010转换为十进制数为: 10010100.01110010 94.72
第三节 BCD码及文字符号代码 一、BCD码 BCD 码以4位为一组,选用 0000B至1001B的十 种状态代表0-9共10个数,舍弃二进制表示法中的 其余6种状态。例如十进制数84.7的BCD码为: 8 4 . 7 0 1000 0100.0111 0000 BCD 码10010100.01110010转换为十进制数为: 1001 0100.0111 0010 9 4 . 7 2