热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

《数学之美》(吴军著)读书笔记:第1章文字和语言vs数字和信息

第1章有4个小节,以及前言。前言1、信息2、文字和数字3、文字和语言背后的数学4、小结下面我一一展开,让我们看看每一节都说了什么。前言语言

  第1章有4个小节,以及前言。

  • 前言
  • 1、信息
  • 2、文字和数字
  • 3、文字和语言背后的数学
  • 4、小结

  下面我一一展开,让我们看看每一节都说了什么。

前言

  语言和数字都是信息传播的载体,他们之间其实存在着天然的联系。而长久以来,数学的发展只是和一些科学研究和生产活动联系在一起,如物理学、经济学、工程学、建筑学等。但是很少有人把它和语言文字联系在一起,又听说过数学家成为建筑学家、物理学家,但是从没听说过数学家成为语言学家。

  语言和数学的产生都是为了同一个目的 —— 记录和传播信息。但是把数学和信息系统自觉地联系起来是半个多世纪前香农博士发明信息论以后的事。

1、信息

  让我们先回到远古时期,那时候我们的祖先已经能通过喉咙发出各种不同的声音如“啊啊”“呀”等来提醒或者表达其他简单的意思,而听到声音的同伴也会发出声音以作回应,表示知道了。

  打个比方一名原始人发出“呀呀”表示提醒同伴有危险,同伴听到之后回应“吱吱”表示我知道了。这其中“有危险”就是要传播的信息,发出“呀呀”的声音是编码的过程,空气是信道,对方听到“呀呀”之后在大脑中解码收到“有危险”的信息。至此,一个信息的传递结束。

  这里面信息的产生、传播、接收包括之后的反馈,与今天最先进的通信在原理上没有任何不同。

  早期人类要传递的信息是很少的,因为他们不需要,所以那时候并没有产生文字和数字的契机。

2、文字和数字

  这一节主要讲述了文字和数字的发展历史。  

文字:

  1.   当我们的祖先所要描述的信息越来越多也越来越抽象复杂的时候,词汇就产生了。
  2.   当语言和词汇多到一定程度的时候,人类仅靠大脑已经记不住所有的词汇了。这个时候文字就应运而生。
  3.   最先产生的文字是埃及的象形文字(后来产生了楔形文字,它逐步发展成为了拼音文字),他的规模随着要描述事物的增加也在渐渐扩大,后来数量增加到了5000个左右,这个时候数量就不再增加,因为没人能掌握那么多文字啊!
  4.   于是我文字的首次概括和归类就开始了。例如,“日”本意是“太阳”,后来把“一天”的意思也概括到了这里面。
  5.   而随着文字概括和归类,产生了二义性的问题,有的文字会产生歧义,这个时候,就要依靠上下文来推测了。

数字:

  •   当我们的祖先需要记录的物品超过三时,当他们觉得五和八还是有区别的时候,计数系统就产生了。
  • 不同时期各个国家和地区的数字系统的产生:
  •   几乎所有文明都采用了十进制,只有玛雅文明采用了二十进制(这也是玛雅文明发展缓慢的原因之一,因为二十进制太复杂与麻烦了)。
  •   中国人采用了用个十百千万亿兆不同的量级用2*100*10000量级相乘的形式来计数。而罗马人则用量级加减的方式计数,计数规则为:小数字出现在左边为减,出现在右边为加。例如:IV表示5-1=4,VII表示5+2=7。
  •   描述数字最有效的是古印度人。他们发明了包括0在内的10个阿拉伯数字,就是今天全世界通用的数字。

3、文字和语言背后的数学

  •   楔形文字在古巴比伦诞生,后来证实这是世界上最古老的拼音文字。腓尼基人将这种楔形文字简化成22个字母,这种文字在古希腊得到充分发展,后来随着罗马帝国的扩张,这些只需要几十个字母的语言成为了亚欧非大陆语言体系的主体。今天我们把所有西方的拼音文字成为罗马式的语言。

    那么这其中用到了那些数学知识呢?

    在罗马体系的文字中,总体来讲,常用字短,生僻字长。而在意型文字中,也是类似,大多数常用字笔画少,而生僻字笔画多。这完全符合信息论中  的最短编码原理。

  •   在中国古代,书写文字不是一件容易的事情。往往刻一个字要花费很长时间,所以文言文就此产生了,但是文言文虽然简洁,却非常难懂。

    这其中用到了什么数学原理呢?

    在通信时,如果信道较宽,信息不必压缩就可以直接传递;而如果信道很窄,信息在传递前需要尽可能地压缩,然后在接收端进行解压缩。

  •   犹太人在抄写《圣经》时,虽然要每次都会打起十二分的精神,但是难免会有抄写错误的时候,那么当时是如何进行校验的呢?犹太人很聪明,发明了使用校验码的形式进行错别字的检验。

    他们把每一个希伯来字母对应于一个数字,这样每行文字加起来便得到一个特殊的数字,这个数字变成为这一行的校验码。同样,对于每一列也是这  样处理。当犹太学者抄完一页《圣经》时,他们需要把每一行的文字加起来,看看新的校验码是否和原文的相同,然后对每一页进行同样的处理。如果这  一页每一行的每一列的校验码和原文完全相同,说明这一页的抄写无误。

    这是利用了数学方法对文字进行检验。

  

  这一节的最后,作者提出了一个问题:到底是语言对,还是语法对?

  这一个问题将在下一章进行解答。

4、小结

  这一章讲述了文字、数字和语言的历史,以及语言和数学的一些联系。

  

Freecode : www.cnblogs.com/yym2013


推荐阅读
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • 突破MIUI14限制,自定义胶囊图标、大图标样式,支持任意APP
    本文介绍了如何突破MIUI14的限制,实现自定义胶囊图标和大图标样式,并支持任意APP。需要一定的动手能力和主题设计师账号权限或者会主题pojie。详细步骤包括应用包名获取、素材制作和封包获取等。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • 本文介绍了Redis中RDB文件和AOF文件的保存和还原机制。RDB文件用于保存和还原Redis服务器所有数据库中的键值对数据,SAVE命令和BGSAVE命令分别用于阻塞服务器和由子进程执行保存操作。同时执行SAVE命令和BGSAVE命令,以及同时执行两个BGSAVE命令都会产生竞争条件。服务器会保存所有用save选项设置的保存条件,当满足任意一个保存条件时,服务器会自动执行BGSAVE命令。此外,还介绍了RDB文件和AOF文件在操作方面的冲突以及同时执行大量磁盘写入操作的不良影响。 ... [详细]
  • 本文介绍了在Python中使用zlib模块进行字符串的压缩与解压缩的方法,并探讨了其在内存优化方面的应用。通过压缩存储URL等长字符串,可以大大降低内存消耗,虽然处理时间会增加,但是整体效果显著。同时,给出了参考链接,供进一步学习和应用。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 本文介绍了响应式页面的概念和实现方式,包括针对不同终端制作特定页面和制作一个页面适应不同终端的显示。分析了两种实现方式的优缺点,提出了选择方案的建议。同时,对于响应式页面的需求和背景进行了讨论,解释了为什么需要响应式页面。 ... [详细]
  • 本文介绍了Android中的assets目录和raw目录的共同点和区别,包括获取资源的方法、目录结构的限制以及列出资源的能力。同时,还解释了raw目录中资源文件生成的ID,并说明了这些目录的使用方法。 ... [详细]
  • 统一知识图谱学习和建议:更好地理解用户偏好
    本文介绍了一种将知识图谱纳入推荐系统的方法,以提高推荐的准确性和可解释性。与现有方法不同的是,本方法考虑了知识图谱的不完整性,并在知识图谱中传输关系信息,以更好地理解用户的偏好。通过大量实验,验证了本方法在推荐任务和知识图谱完成任务上的优势。 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
author-avatar
爱心常在V_991
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有