




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、进位计数制及其相互转换二进制 (10110100B)十进制 (658D)八进制 (3756Q)十六进制 (A5E3H)二进制的优缺点?10110100B在计算机内可能是什么? 1. 1. 进位计数制进位计数制 (1 1)计数符号)计数符号每一种进制都有固定数目(基数)的计数符号。每一种进制都有固定数目(基数)的计数符号。 十进制:十进制:1010个记数符号,个记数符号,0 0、1 1、2 2、9 9。 二进制:二进制:2 2个记数符号,个记数符号,0 0和和1 1。 八进制:八进制:8 8个记数符号,个记数符号,0 0、1 1、2 2、7 7。十六进制:十六进制:1616个记数符号,个记数符号
2、,0 09 9,A A,B B,C C,D D,E E,F F,其中其中A AF F对应十进制的对应十进制的10101515。 (2 2)权值)权值 在任何进制中,一个数的每个位都有一个权值。在任何进制中,一个数的每个位都有一个权值。比如十进制数比如十进制数2579125791具有如下按权展开规律:具有如下按权展开规律:(2579125791)10=210=210104 4+5+510103 3+7+710102 2+9+910101 1+1+110100 0。 从右向左,每一位对应的权值分别为从右向左,每一位对应的权值分别为10100 0、10101 1、10102 2、10103 3、10
3、104 4。 不同进制由于其进位的基数不同,其权值不同进制由于其进位的基数不同,其权值也是不同的。比如二进制数也是不同的。比如二进制数100101100101,其按,其按权展开规律应为:权展开规律应为:(100101100101)2 2=1=12 25 5+0+02 24 4+0+02 23 3+1+12 22 2+0+02 21 1+1+12 20 0 从右向左,每个位对应的权值分别为从右向左,每个位对应的权值分别为2 20 0、2 21 1、2 22 2、2 23 3、2 24 4、2 25 5。 2 2不同数制的相互转换不同数制的相互转换 (1 1)二、八、十六进制转换为十进制)二、八、
4、十六进制转换为十进制 方法:按权展开求和,即将每位数码乘以各自的方法:按权展开求和,即将每位数码乘以各自的权值并累加求和,所得到的数即是十进制数。权值并累加求和,所得到的数即是十进制数。 例例2-1 2-1 将(将(1001.11001.1)2 2 转换成十进制。转换成十进制。 解解 (1001.11001.1)2= 12= 12 23 3+0+02 22 2+0+02 21 1+1+12 20 0+1+12 2-1 -1 = 8+1+0.5 = 8+1+0.5 = =(9.59.5)1010 例例2-2 2-2 将(将(345.45345.45)8 8 转换成十进制。转换成十进制。 解解 (
5、345.45345.45)8 = 8 = 3 38 82 2+4+48 81 1+5+58 80 0+4+48 8-1 -1+5+58 8-2-2 = 192+32+5+0.5+0.078125 = 192+32+5+0.5+0.078125 = =(229.578125229.578125)10 10 例例2-3 2-3 将(将(A3B.75A3B.75)16 16 转换成十进制。转换成十进制。 解解 (A3B.75A3B.75)1616=10=1016162 2 +3+316161 1+11+1116160 0+7+71616-1 -1+5+51616-2-2 = = 2560+48+11
6、+0.4375+0.01953125 2560+48+11+0.4375+0.01953125 = =(2619.457031252619.45703125)1010 (2 2)十进制转换为二、八、十六进制)十进制转换为二、八、十六进制 假设将十进制数转换为假设将十进制数转换为R R进制数进制数: 整数部分:除以整数部分:除以R R取余法取余法,即整数部分不断除以,即整数部分不断除以R R取取余数,直到商为余数,直到商为0 0,最先得到的余数为最低位,最后,最先得到的余数为最低位,最后得到的余数为最高位。得到的余数为最高位。 小数部分:乘小数部分:乘R R取整法取整法,即小数部分不断乘以,即小
7、数部分不断乘以R R,每,每次取整数,用小数部分再乘次取整数,用小数部分再乘R R,直到积为,直到积为0 0或达到有或达到有效精度为止,最先得到的整数为最高位(最靠近小效精度为止,最先得到的整数为最高位(最靠近小数点),最后得到的整数为最低位。数点),最后得到的整数为最低位。 例例2-4 2-4 将(将(75.45375.453)1010转换成二进制数(取转换成二进制数(取4 4位位小数)。小数)。 解解 (75.45375.453)10 = 10 = (1001011.01111001011.0111)2 2 例例2-5 2-5 将(将(152.32152.32)1010转换成八进制数(取转
8、换成八进制数(取3 3位位小数)。小数)。 解解 (152.32152.32)10=10=(230.243230.243)8 8 例例2-6 2-6 将(将(237.45237.45)1010转换成十六进制数(取转换成十六进制数(取3 3位小数)。位小数)。 解解 (237.45237.45)10=10=(ED.733ED.733)1616 237/16=14 237/16=14余余1313 (3 3)二进制转换为八、十六进制)二进制转换为八、十六进制 因为因为2 23 3=8=8,2 24 4=16=16,所以,所以3 3位二进制数对应位二进制数对应1 1位位八进制数,八进制数,4 4位二进
9、制数对应位二进制数对应1 1位十六进制数。二位十六进制数。二进制数转换为八、十六进制数比转换为十进制数进制数转换为八、十六进制数比转换为十进制数容易得多,因此常用八、十六进制数来表示二进容易得多,因此常用八、十六进制数来表示二进制数。制数。 表表2-12-1列出了它们之间的对应关系。列出了它们之间的对应关系。表表2-1 2-1 二进制数、八进制数和十六进制数之间的对二进制数、八进制数和十六进制数之间的对应关系应关系 二进制二进制八进制八进制十六进制十六进制二进制二进制八进制八进制十六进制十六进制0000000 00 01000100010108 80010011 11 110011001111
10、19 90100102 22 2101010101212A A0110113 33 3101110111313B B1001004 44 4110011001414C C1011015 55 5110111011515D D1101106 66 6111011101616E E1111117 77 7111111111717F F 转化的方法是将二进制数以小数点为中心分别向转化的方法是将二进制数以小数点为中心分别向两边分组,转换成八(或十六)进制数,每两边分组,转换成八(或十六)进制数,每3 3(或(或4 4)位为一组,不够位数在两边加)位为一组,不够位数在两边加0 0补足,然后将补足,然后将
11、每组二进制数化成八(或十六)进制数即可。每组二进制数化成八(或十六)进制数即可。 例例2-7 2-7 将二进制数将二进制数1001101101.110011001101101.11001分别转换为分别转换为八、十六进制数。八、十六进制数。 注意:总体规律是整数部分、小数部分以小数点为注意:总体规律是整数部分、小数部分以小数点为分界线按相反方向分组,最后不足相应位数应补分界线按相反方向分组,最后不足相应位数应补0 0,整数部分左边补整数部分左边补0 0,小数部分右边补,小数部分右边补0 0。然后,按。然后,按照上面的对应关系表列出即可。照上面的对应关系表列出即可。2010)(001 001101
12、101.110(1155.62)81155.622161000)(0010 01101101.1100(26 . 8)268DCDC解:(注意:在两边补零) (4 4)八、十六进制转换为二进制)八、十六进制转换为二进制 将每位八(或十六)进制数展开为将每位八(或十六)进制数展开为3 3(或(或4 4)位二)位二进制数,也以小数点位分界线,不够位数加进制数,也以小数点位分界线,不够位数加0 0补足。补足。 例例2-8 2-8 把下列相应的数据转换成二进制数。把下列相应的数据转换成二进制数。 解解 : 28010)(110 011111. 000(637.02)637022160101)(0010
13、 00111011.1110(23 . 5)235BEBE小王用word完成英文作文,统计共写了206个单词。老师用中文给出了评语。小王一边听着MP3,在准备明天课程报告的ppt,这时屏幕右下角的小头像图表闪动了,系统提示他别人给他发过来一封QQ邮件。计算机处理了哪些信息?计算机怎么完成这些工作?英文、数值、中文、图片、声音、影像、邮件、网页。系统软件(含通信软件)、应用软件(按专门流程处理特定格式信息)在单CPU下计算机同时完成这些工作?宏观同步、微观异步(分时、多进程,多线程)一、数据的表示方法一、数据的表示方法 计算机中计算机使用最多的符号数据是字符和字符串。字符在计算机中通常用8位二进
14、制数来表示,构成一个字节。采用最广泛的是ASCII码,它采用7位二进制数,可构成128种编码。 汉字需多少字节表示?字库?列01234567行 b6b5b4b3b2b1b000000101001110010111011100000NULDELSP0Pp10001SOHDC1!1AQaq20010STXDC2”2BRbr30011ETXDC3#3CScs40100EOTDC4$4DTdt50101ENQNAK%5EUeu60110ACKSYN&6FVfv70111DELETB7GWgw81000BSCAN(8HXhx91001HTEM)9IYiyA1010LFSUB*:JZjzB1011VTES
15、C+;KkC1100FFFS,Nn表2-2 ASCII字符编码表计算机中数值数据有两种表示方法:定点表示法,浮点表示法。采用定点表示法表示的数据叫作定点数,定点数是指小数点位置固定不变的数。定点数在计算机中的表示格式:定点数在计算机中的表示格式:XfXn-1Xn-2X1X0n位数码数符小数点位置(对于小数)小数点位置(对于整数)*机器字长机器字长n+1位位定点小数的表示范围:.1111.1 X +.11111即:(1-2-n) X(1-2-n)定点整数的表示范围:1111.1 X +1111.1即(2n-1) X + (2n-1)*定点数所能表示的数值范围很有限,而且只能表示纯定点数所能表示的
16、数值范围很有限,而且只能表示纯小数或纯整数,二者不可兼顾小数或纯整数,二者不可兼顾采用浮点表示法表示的数据叫做浮点数。浮点数可用来表示实数。一个带符号的二进制浮点数可表示为:0.10101101(尾数)2101(阶码)尾数是一个带符号的纯小数,由它来确定浮点数的精度尾数是一个带符号的纯小数,由它来确定浮点数的精度阶码是一个带符号的纯整数,它确定浮点数的表示范围阶码是一个带符号的纯整数,它确定浮点数的表示范围阶码越长,所表示的浮点数的范围越大阶码越长,所表示的浮点数的范围越大浮点数在计算机中的表示格式:浮点数在计算机中的表示格式:EfEp-1E1阶符*机器字长机器字长p+m+2位,其中尾数占位,
17、其中尾数占m+1位,阶码占位,阶码占p+1位位E0S1S0SfSm-1数符阶码值(p位)尾数值(m位)浮点数所能表示的数值范围应分成正、负数。分别表示如下: p p正数:正数:2-m 2-(2 - 1) X+(1-2-m) 2+(2 - 1) p p负数:负数:-(12-m ) 2+(2 - 1) X-2-m 2-(2 - 1)举例:某机字长8位,采用定点表示法,可表示的纯小数或整数的表示范围是多少?若采用浮点表示法,阶码3位,尾数5位,表示的数值范围是多少?定点小数:-0.1111111 +0.1111111,即-127/128+127/128定点整数:-1111111.+1111111.,
18、即127127浮点数:正数:0.00012-11+0.11112+11即 +1/128+ 15/2负数:-0.1111211-0.00012-11即 -15/2 -1/12815/162+11 浮点数基值的选择 rm=2、8、16尾数的基值,增大数的表示范围,不降低数的表示精度 浮点数的规格化尾数1/rm,即尾数小数点后的第一位数是非0二、机器数的编码格式二、机器数的编码格式*在计算机中,机器数有三种不同的编码格式,即原码表示法、补码表示法和反码表示法。将带符号数的符号位数值化(习惯上用“0”表示“”,用“1”表示“”),数码位保持不变,即原码表示法。例如:X0.101101 Y=-0.010
19、110则X原=0.101101 Y原=1.0101101.000000 与 0.000000 的区别?不能满足操作的唯一性要求。原码表示法的数学定义原码表示法的数学定义对于定点小数X=X0.X1X2.Xn,其原码的数学定义为X原= X当 0 X(1-2-n)X原= 1- X=1+|X|当-(1-2-n) X0即:对于正小数:X=+0.X1X2.XnX原= 0.X1X2.Xn对于负小数:X=-0.X1X2.XnX原= 1.X1X2.Xn对于定点整数X=X0X1X2.Xn,其原码的数学定义为X原= X当 0 X(2n1)X原= 2n - X= 2n +|X|当-(2n1) X0即:对于正整数:X=
20、+X1X2.XnX原= 0X1X2.Xn对于负整数:X=-X1X2.XnX原= 1X1X2.Xn可以看出,原码表示法直观,与真值一一对应,但其可以看出,原码表示法直观,与真值一一对应,但其缺点是:用原码进行加、减法运算时非常麻烦,运算缺点是:用原码进行加、减法运算时非常麻烦,运算器中不仅要有加法器,还要有减法器。这就是推出补器中不仅要有加法器,还要有减法器。这就是推出补码和反码表示法的原因。码和反码表示法的原因。补码表示法是根据数学上的同余概念引申而来。假定有两个数假定有两个数a a和和b b,若用某一个整数,若用某一个整数m m去除,所得的余去除,所得的余数相同,就称数相同,就称a,ba,b
21、两个数对两个数对m m是同余的。且记作:是同余的。且记作:abab (mod m) (mod m)假设X,Y,Z三个数,满足下列关系:Z=nX+Y (n为整数),则称Z和Y对模X是同余的,记作:ZY (mod X)X0 (mod X)例:假设时钟正指向10点整,但当前时间为6点整,为校正时钟,可顺时针拨8小时(+8),或逆时针拨4小时(-4),这说明对时钟来讲,8和4是等效的,这是因为时钟以“12”为模。108186 (mod 12) 10-4=10+(-4)+12=10+86 (mod 12) 以通式表示:A-B=A+(-B)+K (mod K) (-B)对模K的补数。计算机本身就是一个模数
22、系统,这是因为计算机的字长是有限的,凡超过机器字长的数据,其超出位会被丢失,这就是计算机的模。对于n+1位字长的定点小数,在机内可表示为: X=X0 . X1X2.Xn, X0为符号位,高于X0的位会被丢失,所以以21为模。对于n+1位字长的定点整数,在机内可表示为: X=X0 X1X2.Xn, X0为符号位,高于X0的位会被丢失,所以以2n+1为模。补码表示法的数学定义:补码表示法的数学定义:对于定点小数对于定点小数X=X0.X1X2.Xn,其补码的数学定义为,其补码的数学定义为X补补= X当当 0 X(1-2-n)X补补= 2+X=2-|X|当当-(1-2-n) X0对于定点整数对于定点整
23、数X=X0X1X2.Xn,其补码的数学定义为,其补码的数学定义为X补补= X当当 0 X2nX补补= 2n+1X= 2n+1-|X| 当当-2n X0举例:若 X=+0.10110010根据定义: X补=0.10110010若 X=-0.10110010根据定义: X补=2+(-0.10110010) =10.00000000-0.10110010 =1.01001110求补码的简易方法:求补码的简易方法:正数的补码同原码;正数的补码同原码;负数的补码,保持原码符号位不变(负数的补码,保持原码符号位不变(“1”),数码位),数码位各位变反,末位加各位变反,末位加1。举例:若 X=0.10110
24、010 X原=1.10110010 X补=1.01001101+0.00000001= 1.01001110补码具有如下特点:补码没有正零和负零之分;+0补=0.00.0-0补=1.11.1+0.0001=0.00.0于是于是1.00.0是补码表示中的最小负数,比是补码表示中的最小负数,比1.11.1更更小。小。已知X,求X补的方法正数同原码,负数保持原码符号位不变,数码位各位变反,末位加1。因此无论正数还是负数,都必须先求原码。例1,已知 X=0.6954,求X补= ?X=-0.10110010 X原=1.10110010 X补=1.01001110例2,已知 X=210,求X补= ?X=-
25、11010010 X原=1110110010 X补=100101110已知 X补,求X原方法对于正数:X原=X 补对于负数:X原=X补补1.01001101 + 0.00000001例:若 X补= 1.10110001 X原=1.01001111 已知 X补,求X补的方法将X 补连同符号位一起,各位变反,末位加1;例:若 X补= 1.10110001 X补=0.01001111已知 X补,求X/2补、X/4补的方法将X 补连同符号位一起右移1位,左边补1位与符号位相同的数码,则得到X/2补;同理,若右移2位,则得到X/4补;例:若 X补= 1.01101111 X/2补=1.10110111
26、X/4补=1.11011011 已知 X补,求2X补、4X补的方法将X 补左移1位,得到2X补,右边补“0”;若左移2位,则得到4X补。例:若 X补= 0.00101101 2X补=0.01011010 4X补=0.10110100 反码表示法与补码表示法有许多相似之处,也可用数学表达式作出严格定义。对于定点小数对于定点小数X=X0.X1X2.Xn,其反码的数学定义为,其反码的数学定义为X反反= X当当 0 X1X反反= (2-2-n)+X当当-1X0对于定点整数对于定点整数X=X0X1X2.Xn,其反码的数学定义为,其反码的数学定义为X反反= X当当 0 X2nX反反= (2n+1-1)+X
27、 当当-2n=CD=C 利用校验码实现对数据信息的校验,目的是提高计利用校验码实现对数据信息的校验,目的是提高计算机的可靠性。检错与纠错的方法很多,这里只介算机的可靠性。检错与纠错的方法很多,这里只介绍常用的三种数据校验方法:奇偶校验、海明校验绍常用的三种数据校验方法:奇偶校验、海明校验和循环冗余校验(和循环冗余校验(CRCCRC)。)。 1 1 奇偶校验奇偶校验 奇偶校验码是一种开销最小,能发现数据代码中奇偶校验码是一种开销最小,能发现数据代码中一位出错情况的编码,常用于存储器读写检查,一位出错情况的编码,常用于存储器读写检查,或或ASCIIASCII字符传送过程中的检查。它的实现原理是字符
28、传送过程中的检查。它的实现原理是使码距由使码距由1 1增加到增加到2 2。 构成规则:奇偶校验通常用来检验单个字符的错构成规则:奇偶校验通常用来检验单个字符的错误。即发送端在每个字符的最高位之后附加一位误。即发送端在每个字符的最高位之后附加一位奇偶校验位。这个校验位可为奇偶校验位。这个校验位可为“1”1”或或“0”0”,以,以保证整个字符中保证整个字符中“1”1”的个数是奇数(称奇校验)的个数是奇数(称奇校验)或偶数(称偶校验)。或偶数(称偶校验)。 1 1奇偶校验原理奇偶校验原理(1 1)如果发送端发送的字节为)如果发送端发送的字节为D8D7D6D5D4D3D2D1D8D7D6D5D4D3D
29、2D1,按照与接收方事先约定,按照与接收方事先约定好的校验方法,在所传输的字节后面要添加一个好的校验方法,在所传输的字节后面要添加一个校验位,以确保所传输的字节连同校验位中校验位,以确保所传输的字节连同校验位中“1”1”的个数为奇数个或偶数个。校验位的个数为奇数个或偶数个。校验位D D校的逻辑表校的逻辑表达式为如下两式所示,达式为如下两式所示,2-12-1式是奇校验位的形成表式是奇校验位的形成表达式,达式,2-22-2式是偶校验位的形成表达式。式是偶校验位的形成表达式。 奇校验位:奇校验位:D D校校=D8=D8 D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 1 1 (
30、2-12-1) 偶校验位:偶校验位:D D校校 =D8=D8 D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1 D1 (2-22-2) 那么发送方应该将这个字节那么发送方应该将这个字节D8D7D6D5D4D3D2D1D8D7D6D5D4D3D2D1 连同校验位连同校验位D D校一并发送到接收方。校一并发送到接收方。 下面给出对几个字节,利用表达式下面给出对几个字节,利用表达式2-12-1和和2-22-2, 分别求出对它们的奇偶校验的编码。结果如表分别求出对它们的奇偶校验的编码。结果如表2-52-5所示。所示。数据(数据(8位)位)奇校验的编码(奇校验的编码(9位)位)偶校验的编
31、码(偶校验的编码(9位)位)D8D7D6D5D4D3D2D1D8D7D6D5D4D3D2D1D校校D8D7D6D5D4D3D2D1D校校0 1 0 1 0 1 0 10 1 0 1 0 1 0 1 10 1 0 1 0 1 0 1 00 1 1 1 1 1 1 10 1 1 1 1 1 1 1 00 1 1 1 1 1 1 1 11 0 0 1 0 0 1 01 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1表表2-5 2-5 几个字节的奇偶校验的编码几个字节的奇偶校验的编码 (2 2)接收方的校验表达式如式)接收方的校验表达式如式2-32-3和和2-42-4所示。当所传所
32、示。当所传输的信息到达接收方后,先进行数据检错,无错后接输的信息到达接收方后,先进行数据检错,无错后接收并存储。检错的逻辑表达式为:收并存储。检错的逻辑表达式为: 奇校验:奇校验:F=D8F=D8 D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 DD校校 1 1 (2-32-3) 偶校验:偶校验:F=D8F=D8 D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 DD校校 (2-42-4) 如果校验式如果校验式2-32-3和和2-42-4的值为的值为0 0,说明无错;结果为,说明无错;结果为1 1,说明有错,这时应该丢掉该信息,让发送方重新,说明有错,
33、这时应该丢掉该信息,让发送方重新发送信息。发送信息。 例例2-23 2-23 如果给定的字节如果给定的字节0110110101101101,请求出它的偶校,请求出它的偶校验位的值是什么?如果接收方收验位的值是什么?如果接收方收 到的信息为到的信息为0110110101101101,请判断有无错误。,请判断有无错误。 解解 设这个字节按如下的顺序排列:设这个字节按如下的顺序排列:D8D7D6D5D4D3D2D1D8D7D6D5D4D3D2D1 利用式利用式2-22-2所求的偶校验位的值为所求的偶校验位的值为D D校校=1=1。 如果接收到的信息为如果接收到的信息为011011001011011001,由于发送方用的是偶,由于发送方用的是偶校验,所以利用式校验,所以利用式2-42-4来进行校验,来进行校验,F=D8F=D8 D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 DD校校=1=1,说明接收到的信息有错
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学语文美学价值试题及答案
- 解除劳动关系协议书
- 全国单招职业适应性测试模拟题库
- 【道法】法律保障生活+课件-2024-2025学年统编版道德与法治七年级下册
- 聚焦CPSM考试内容试题及答案
- 汤姆索亚历险记读书笔记5篇
- 语文表达的精准与流畅试题及答案
- 深化理解CPMM的试题及答案讲解
- 2025年订餐配送合作协议模板
- 二零二五年度农村水井租赁与农业用水效率提升合同
- 非遗文化之漆扇介绍课件
- MH 5006-2015民用机场水泥混凝土面层施工技术规范
- (正式版)SHT 3078-2024 立式圆筒形料仓工程设计规范
- 杭州市建设工程项目工伤保险参保 变更 登记表
- 混凝土销售结算单
- 部编版四年级道德与法治下册4《买东西的学问》第1课时课件
- Word作文纸模板
- ME2012F复检秤控制器使用手册(共17页)
- 三级管配筋设计图册
- 高等职业教育法律文秘专业教学资源库
- 长沙理工大学考研桥梁工程复试习题及答案
评论
0/150
提交评论