版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
细胞分裂的计算机程序模拟报告人:马俊报告时间:Tuesday,January16,2024研究生论坛Question:What
is
life?1.生物体的细胞组成及功能都来自于胚胎细胞中的遗传物质DNA分子链。2.生物体的发育成长主要是建立在细胞的有序分裂和分化过程中。3.生物体的基本行为由DNA编码决定,但具体环境中的宏观表现却是通过生物体对内外环境的反射表现出来的。第一讲复习:三条假说任何生命体中的DNA分子链都存储一种生命程序,是存储有指令和数据的编码序列,染色体的螺旋结构是其存储结构,而生命现象是此程序运行起来后表现出宏观现象。正如计算机程序都由二进制指令序列组成,我们看到的程序界面是该计算机程序运行起来后的宏观表现而已。命题和结论DNA是一种程序编码生命现象是一个进程并且是一种中间码!生命现象和计算机程序类比通过类比论证,最后我们还得到“生命体”和“非生命体”的界定条件,即“生命体”能主动地从环境中获取能量或蕴含能量的物质资源,然后通过内部组织分解或捕获能量以维持本组织的的生命现象,也即维持本组织的生命程序的运行,这是一种系统的有序运动状态,是依赖于特定物质系统的的一种存在。生命终止,则意味着生命程序终止执行,虽然原来承载此生命程序的物质基础(比如动物的尸体)还在,但其生命程序的运行状态消失了,类似于我们的计算机程序,虽然计算机硬件还在,但某一进程终止了,我们就无法和它再交互了;而非生命体则不存在这一现象,即便有能量传给此非生命组织,造成的也只是此组织的整体运动或组织内的大量分子或粒子的热运动。生命体和非生命体的界定条件第二讲复习:反射机制
感知是信息交流的基础,自然是意识、思考的基础,感知是生命体所特有的概念,因为生命是程序,则感知也是一种程序,所有的感知活动都依赖反射程序,而反射则依赖信息的流动,而信息的流动又离不开能量的流动!在程序设计中,感知以反射计算为基础!从抽象的角度来看,反射指的是一个系统S接收到另一个系统U的物质或能量输入时,所产生的反应或系统变化,是受刺激系统在相应刺激作用下的一种系统内外部状态改变的现象。Java程序设计中的动态反射计算metalevelbaseleveljava.lang.ObjectCelln.class“mataclass”java.lang.Classcellcellcellcell…classobject“Celln.class”CtClassinheritFrominstanceOfloadedbaseobjectCelln.classclassfileMethodFieldConstructor9基于字节码文件的静态反射类名父类或接口外存或网络中的字节码文件装入内存后的字节码映像classHello{privateinta;//成员变量
publicvoidsay(){//成员方法
System.out.println("Hello!");}}类对象字节码分析程序成员方法对象成员变量对象方法名修饰符代码体变量名修饰符具体值Hello.class编译一种统一的反射理论基本反射:系统S的一个子程序Pi开始变换,在变换过程中,根据特定的内外部状态有选择地执行此子程序中不同的指令片段的这一机制,称为系统的基本反射。这种内外部的特定状态的获得可以是系统自身内部产生,也可以是其它系统的能量和信息交换导致的。高级反射:系统S有子程序集合{P},在不同的环境系统中V中,会选择不同的子程序组合以完成相应的任务,是系统的一种自适应环境的行为,是基本反射的有机组合。智能反射:系统S有指令集{I},子程序集{P},在特定的环境系统V中,能够根据自身内外的需求,创造出新的子程序或复杂指令,或修改已经有的子程序指令序列,以增加新的功能。从另一方面来讲,反射是系统与“外在环境”和其它对象交换能量和信息的必要手段,系统通过这种方式体现自己的“存在”,非生命体的反射采用的基本上是物理式或化学式的简单处理,是在基本指令上的一种简单变换,如光的反射、光电效应、声波反射、声控效应。而生命体的反射一般都比较复杂,在复杂指令或子程序级别上的一种宏观效应,这种反射更多表现在能量转化和信息处理等时空变换中,如一只饿猫看到一只老鼠,会引发猫的一系列程序的执行。指令和程序+=
首先我们提出几个问题,什么是指令?军队指挥官的指令、计算机CPU中的指令、各种物质分子的化学反应方程式等他们是否可以统一分析?什么又是程序?程序的本质又是什么?如计算机语言中:longx=5124567L+3124567L或汇编的add指令内存从一种状态变换到了另一种状态!指令:设一个系统S,有有限状态集合{S1,S2…Sn},从状态S1变换到S2的一个基本约束规则可称为一条指令,指令的执行必定伴随着系统状态的改变和能量的变化。程序:程序是指某系统S从状态Si变换到Sj的有序的、有限的指令集合。因为指令的执行要消耗能量,所以一个程序的运行(即进程)也必须要在能量的不断供应下才能得以连续进行,直到程序执行的终点即系统的状态Sj。一个程序的本质就是一套有序的时空变换和能量转换系统,程序执行的结果一般是系统的状态发生了改变,或者产生了能量转移或转换。指令和程序
松鼠推箱子游戏指令和程序而针对上图所示初始系统,可以编程如下:Move_RightPush_RightPush_RightMove_DownMove_Down省略Push_DownOK抽象的指令集为:{Move_Up: 上移一步Move_Down: 下移一步Move_Left: 左移一步Move_Right: 右移一步Push_Up:上推一步Push_Down: 下推一步Push_Left: 左推一步Push_Right: 右推一步}图3-4指令抽象和编程图灵机图灵机的形式化描述如下:图灵机是一个五元组(K,∑,δ,s,H),其中:K是有穷个状态的集合;∑是字母表,即符号的集合;s∈K是初始状态;H∈K是停机状态的集合,当控制器内部状态为停机状态时图灵机结束计算;δ是转移函数,即控制器的规则集合,就是我们定义的指令。
图灵机在图灵机中,δ就是一个指令集合,例如计算“x+1”的图灵机的指令集如下:思考:程序和能量的关系?都与物质空间状态变化有关!程序和进程进程:运行的程序,指的是一个程序进入运行状态,是在能量参与下的一条一条指令连续处理和执行过程。程序一般指的是描述性的、静态的编码,是可存储性的,是能够用数据的方式呈现出来的,可以用不同的语言、格式、介质存储到不同的媒体上,既可以以二进制的方式存储到磁盘上或内存中,也可以用高级语言甚至是不同国家的语言存储到各种存储媒体上;但进程指的是程序的执行状态,程序的执行是与执行环境相关的,如前面所示的加法运算程序,可以是人手动执行计算,也可以编译某一种机器的机器指令程序,让机器执行计算。程序的执行状态----进程是无法感知的,只能觉知(推理思考后认识到)。换句话说我们只能感知程序的运行结果,也可以测试在此进程中每一时刻的系统状态,但我们无法测试进程,我们只能由此一系列的状态变化而觉悟进程的存在。同样地,我们只能看到生命程序执行的结果-----一个生命体诞生、成长到死亡,能感知到生命程序的宏观表现----此生命体和外界的交互活动,由此我们能觉悟(推理后知道)到生命的存在,但我们无法测量和感知生命程序。其实早在三千多年前释迦牟尼就已经指出不可以用色、声、香、味、触等方式来探求生命的本质,我们感觉到的、测量到的只是生命的现象,是一瞬时的状态,而状态是迁变不住的,这些都不是生命的本质,生命的本质是进程,只可以觉知,不可以感知!《金刚经》----“凡所有相,皆是虚妄”程序和进程
生命程序的指令系统
在细胞中有许多的基本化学反应,我们可以将其整理出来形成一套生命程序的指令集,研究其指令序列及流程,然后抽象独立的程序模块,最后得到某生命体的生命全景图,就象我们反编译一套计算机程序,难度很大,但不失为一种快速获取算法信息的技术。酶酶(Enzyme)的概念:绝大多数酶是蛋白质,少数的酶是RNA.酶是活细胞产生的一类具有生物催化作用的有机物。来源功能本质酶的概念和特性据估计我们基因开关位置也有4000多个催化剂可以降低化学反应的活化能,而且与无机催化剂相比较,酶的作用更显著,因而催化效率更高。催化原理CCOOHHNR1R2OHHCNH2COHH+→R1CNH2CHOCOOHCHNR2H蛋白质酶是指令的控制开关缩合酶细胞中每时每刻进行的化学反应的统称细胞代谢酶的本质与作用2H2O2
→2H2O+O2H2O2酶酶计算机程序能量供应有了指令还得有能量!生命程序能量来源生命程序能量来源程序设计---指令的有序化按照我们前面的定义,指令指的是系统时空状态的变换规则,基本指令集就是这些规则的集合,类似我们象棋、围棋、五子棋的下棋规则等等,而程序就是这些规则的有序组合,程序的执行就是将此程序中的指令按照顺序和要求一个一个付诸行动,程序结束的前提是某种目的状态的出现。程序设计本质上就是要设计出一个指令序列将系统S从状态Si变化到Sj,当然这种指令序列并不是唯一的,这就是程序设计的多样性。如以汽车驾驶为例,“10:30前将车开到广场”这条抽象指令就是一个小程序。其基本指令只是具有8条简单指令的集合{启动、加速、减速、左转、右转、倒退、停止、熄火},根据路况和行驶状况,采用不同的指令,直到将车开到目的地。程序设计的本质基本指令集如加、减、乘、除、赋值、比较等squareabsaverageGood-enoughimproveSqrt-itersqrt程序设计的本质其实就是从简单指令集到复杂指令再到复杂子程序的一种抽象过程,再用特定的程序设计语言描述出来而已!面向对象程序设计和java语言面向对象的基本设计原则有信息隐藏、数据抽象、封装、模块化、多态和继承等,在面向对象程序设计中,程序员的主要工作是设计类,类是创建对象的蓝图或模板,是通过大量的具体对象抽象形成的一般化的概念模型,是前面抽象过程的更高级别的延伸。如果我们将面向对象的思想在哲学上做进一步的提升和抽象,可以这样认为,我们赖以生存的现实世界就是由各种各样的“实体对象”所组成的,每个对象都有自己的内部组织结构和外部表现行为,复杂对象是由简单对象组合而成,正如有机物是由无机物分子组合而成,细胞由各种细胞器、蛋白质分子、DNA分子链等组成一样;不同的对象之间的相互联系和相互作用构成了各种不同的系统,并进而构成了整个客观世界。Java语言是一种纯面向对象设计语言细胞就非常适合抽象为对象JVM工作原理Java虚拟机(JVM)的主要任务有两个,第一是装载类代码,在Java中,类是一个完整的功能描述单位,相当于染色体中的具有独立功能的基因,一般以字节码文件(也叫class文件)的方式存储在文件系统中;第二是检查并执行其中的字节码程序指令。Java应用程序能够在运行时安装用户自定义的类装载器,这种类装载器能够使用自定义的方式来装载类。java字节码文件Java语言能成功的另外一个关键的技术就是前面不断提到的class文件即字节码技术,Java语言的字节码指的是Java语言源程序编译后生成的一种中间码,它与平台无关,非常接近硬件的机器码指令组成的字节码序列,这非常类似于生物细胞中的DNA序列,是一种中介编码,必须经过再次翻译解释才能变成对应的基本指令系统的指令序列,运行后才能表现出具体程序功能,读者可以回忆我们前面提到的中心法则,DNA必须解码翻译成蛋白质后才能表达出其功能。也就是说生命程序的体系非常类似我们的Java字节码体系,DNA分子链对应字节码程序,蛋白质之间的化学反应规则对应于本地指令系统,程序执行后的宏观效果就是程序运行的界面对应于生命体的生命现象。类型名称数量u4magic1u2minor_version1u2major_version1u2constant_pool_count1cp_infoconstant_poolconstant_pool_count-1u2access_flags1u2this_class1u2super_class1u2interfaces_count1u2interfacesinterfaces_countu2fields_count1field_infofieldsfields_countu2methods_count1method_infomethodsmethods_countu2attributes_count1attribute_infoattributesattributes_count注:u1、u2、u4、u8分别表示1个、2个、4个、8个字节无符号类型。Java字节码文件的存储格式java字节码文件classBallextendsException{}classPitcher{privatestaticBallball=newBall();staticvoidplayBall(){inti=0;
for(;;){try{if(i%4==3){throwball;}++i;}catch(Ballb){i=0;}}}}0iconst_0//压入常量0到栈顶
1istore_0//弹出栈顶元素到局部变量0,对应inti=0;//try模块开始
2iload_0//压入局部变量0到栈顶
3iconst_4//压入常量44irem//计算栈顶两元素的余数
5iconst_3//压入常量36if_icmpne13//如果余数不等于3则跳转到13处,对应if(i%4==3){9getstatic#6//压入常量池中位置#6的静态成员变量
12athrow//抛出异常
13iinc01//让局部变量0自加1,对应++i;//try模块结束
16goto2//跳转到2出,对应for(;;){}//异常处理模块
19pop//弹出异常引用,此处无用
20iconst_0//压入常量021istore_0//弹出栈顶元素到局部变量0中
22goto2//跳转到2出,对应for(;;){}Exceptiontable://异常表
fromtotargettype21619Playball()方法的指令序列从此开始连续22个字节此处有一反射测试指令以最著名的克隆羊多利为例,用我们的程序原理来解释更为合理,也从实证层面验证了我们前面的提出的命题。即每一个细胞中的DNA分子链都存储该生命体的“生命程序代码”。在克隆羊多利实验中,取出第一只羊(甲羊)体细胞中的DNA分子链,将其放入一个初始环境中启动执行(乙羊的卵细胞),再将已经启动生命体程序放入另一能量和物质供应环境(丙羊的子宫),如上图所示,整个过程都可以用类似Java字节码程序的原理来解释,因为生命程序的代码是来自甲羊,所以最后长大的羊和甲羊很相似,而跟乙羊和丙羊的相似度不大。克隆技术DNA片段基因对应Java类细胞分裂程序模型对相应的DNA码段进行解码并执行,执行的结果不是修改DNA分子链,而是执行的结果是修改细胞质内容,产生功能蛋白质、各种酶。分化分裂:分化分裂是指细胞在反射计算后通过激活相应的DNA片段,分裂后的细胞通过对此DNA片段解码表达产生新的功能蛋白质,最后形成新的细胞种类以形成新的组织器官,这是生物体发育和成长的基础。细胞分化分裂再生分裂:再生分裂是指一个细胞通过复制将自己一分为二变成两个相同的细胞,主要发生在组织器官的生长和损伤修复过程中,其分裂过程要受到细胞对当前生存环境的反射和相应DNA片段的解码表达以便生成需要的蛋白质。细胞再生分裂细胞的具体功能是通过特定蛋白质表现出来的,而蛋白质是通过细胞核的染色体上的特定基因决定的。这一过程首先在细胞核内开始,在细胞核内染色体解旋,然后选择合适的基因片段进行“转录”形成mRNA片段;此mRNA通过核孔进入细胞质,接下来在细胞质中,以mRNA为模板,在核糖体中合成具有一定氨基酸顺序的蛋白质,现代生物学将这一过程称为“翻译”,细胞的具体功能和性状就是通过这些蛋白质表现出来的,我们也将这一过程称为有选择的“基因表达”。细胞的功能和基因表达细胞分裂程序模型细胞具体功能表达信息后续基因调控信息细胞分裂程序模型—解决的问题细胞分裂程序设计----功能表达…0101101011010110001100111100110000110101110011000101010111001100110101011100110111001010…chromsomCtClassJVMClass实例对象装入(mRNA到蛋白质的翻译)硬件基本指令系统(蛋白质具体功能表达)从染色体取得合适的基因片断(mRNA转录)创建具体对象细胞分裂程序设计----分化CelliCelliObjectCelli+1generatedmetalevelbaselevelreflectionDNADecode_activationcontrol(Y)xn,yn….x5,y5x4,y4x3,y3x2,y2x1,y1基因组x0,y0GenegroupDNADecode_functioncontrol(X)ExpressionproductionGenegroup细胞分裂程序设计----再生Cellicell0DNA&inforeflectioninstanceOfmetalevelbaselevelcell1DNA&inforeflection“Celli.class”CtClassLoadedThreadicell2DNA&info….DNA&infoMetalLevelCtClassBaseLevel“Cell0.class”cell0chromsomeinfo1Cell0.class“Cell1.class”“Cell2.class”thread0Cell1.classCell2.classcell1cell1cell2cell2thread1thread2info2“Cell3.class”“Cell4.class”info0cell3cell3Cell3.classCell4.classinfo3cell4cell4thread3thread4info4表示将内存中用CtClass对象表示的类代码通过类装载器装入JVM,使之成为JVM中可创建实例对象运行版的类。表示分化出一种新的细胞类,进而会产生一个新的线程。表示BaseLevel区的实例对象是由MetalLevel区中的类创建的。表示分例出一个新的细胞,此细胞将拥有同一类细胞共同的细胞质调控信息和同样的染色体,同时这些细胞才是具体功能的提供者。表示指向关系或者数据的访问关系表示后续还有多个同样的对象或类或处理过程细胞分裂程序工作原理图线程开始读取细胞质调控内容循环读取activeinfo中的某一位判断是否为true?读取对应的基因段通过DnaDecode解码并修改生成相应的类装入新生成的类并修改相应的引用存储相应CtClass实例存储已装入的Class实例开辟新的分裂线程并启动线程结束YN激活或抑制后续基因组是否继续分裂?是否达到分化条件?是否再生分裂?再生一个新细胞运行细胞功能死亡处理NYNY细胞分裂算法数学模型抽象Cell1F(x1)G(y1)Cell2F(x2)G(y2)Cell1功能Cell2功能Cell3F(x3)G(y3)Cell3功能Cell4F(x4)G(y4)Cell5F(x5)G(y5)Celln………….Cell4功能Cell5功能Cell1中的调控信息Cell2中的调控信息Cell3中的调控信息Cell4中的调控信息Cell5中的调控信息xn,yn….x5,y5x4,y4x3,y3x2,y2x1,y1基因组x0,y0gene0gene1gene2gene3gene4gene5genen鸡和蛋谁先?根据我们的假设和命题,鸡蛋(已受精)中的染色体DNA分子链是鸡的生命程序编码的一种存储结构,对应设计好的、存储在外存中的计算机程序;经过胚胎干细胞不断的分裂变成了小鸡破壳而出,对应于计算机程序的装入内存后连续运行;破壳出来的鸡就是一个维持成长或平衡生命的进程,对应于完全装入和运行的计算机进程,所以很自然就得到了我们的结论,那就是先有蛋后有鸡;即先有可以启动运行、以编码的方式存储的生命程序DNA----鸡蛋,后有运行着的生命程序----鸡,如下图所示:外显子、内含子和假基因
外显子(expressedregion)是真核生物基因的一部分,它在剪接(Splicing)后仍会被保存下来,并可在蛋白质生物合成过程中被表达为蛋白质。外显子是最后出现在成熟RNA中的基因序列,又称表达序列,既存在于最初的转录产物中,也存在于成熟的RNA分子中的核苷酸序列。术语外显子也指编码相应RNA外显子的DNA中的区域,所有的外显子一同组成了遗传信息,该信息会体现在蛋白质上。内含子(introns)也是真核生物基因的一部分,主要指真核生物细胞DNA中的间插序列。这些序列被转录在前体RNA中,经过剪接被去除,最终不存在于成熟RNA分子中。内含子和外显子的交替排列构成了割裂基因。在前体RNA中的内含子常被称作“间插序列”,如下图所示。如果用程序的角度来看待外显子和内含子,我们可以用计算机程序设计领域的两个基本概念来对应,即数据变量对应于外显子、执行指令或条件标志对应于内含子;正如我们已经看到的一样,外显子和内含子是间隔出现的,对应于我们程序模型,每一个基因类中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园美术节的组织及宣传方案计划
- 地铁号线2024年度防水涂料采购与施工分包协议
- 砸地面合同范本
- 货物包销合同范本
- 2024版二手房买卖双方自助交易合同范本3篇
- 2024年度工程监理合同详细内容
- 二零二四年度国际货物买卖与运输合同
- 2024年度车位买卖合同与停车场管理条款
- 二零二四年度货物仓储管理服务承包合同
- 二零二四年度企业征信服务合同3篇
- 9.1增强安全意识 教学设计 2024-2025学年统编版道德与法治七年级上册
- 详解2024年全国教育大会精神课件
- 2024年共青团团课考试题库及答案
- (高清版)TDT 1013-2013 土地整治项目验收规程
- 驾照体检表完整版本
- 20100927-宣化上人《愣严咒句偈疏解》(简体全)
- 初级职称认定表
- 企业员工健康管理存在的问题与解决途径探讨
- 浅谈初中数学教学新课标理念的运用
- 12种业务招待费处理技巧汇总
- 1到13之内的24点全题及解(整理版
评论
0/150
提交评论