文档视界 最新最全的文档下载
当前位置:文档视界 › 程序设计的几个基本概念

程序设计的几个基本概念

程序设计的几个基本概念
程序设计的几个基本概念

1、什么是可视化程序设计?

可视化(Visual)程序设计是一种全新的程序设计方法,它主要是让程序设计人员利用软件本身所提供的各种控件,像搭积木式地构造应用程序的各种界面。

2、可视化程序设计有哪些优点?

可视化程序设计最大的优点是设计人员可以不用编写或只需编写很少的程序代码,就能完成应用程序的设计,这样就能极大地提高设计人员的工作效率。

3、能够进行可视化程序设计的语言有哪些?

能进行可视化程序设计的语言很多,比较常用的有微软的Visual Basic、Visual C++、Visu al C#、中文Visual Foxpro、Borland公司的Delphi等。

4、可视化程序设计中有哪些基本概念?

主要的几个基本概念有表单、组件、属性、事件、方法等。

5、什么是表单(Form)?

表单是指进行程序设计时的窗口,我们主要是通过在表单中放置各种部件(如命令按钮、复选框、单选框、滚动条等)来布置应用程序的运行界面。

6、什么是组件?

所谓组件,就是组成程序运行界面的各种部件,如:命令按钮、复选框、单选框、滚动条等。

7、什么是属性?

属性就是组件的性质。它说明组件在程序运行的过程中是如何显示的、组件的大小是多少、显示在何处、是否可见、是否有效……

8、属性可以分成哪几类?

属性可分成三类,设计属性:是在进行设计时就可发挥作用的属性;运行属性:这是在程序运行过程中才发挥作用的属性;只读属性:是一种只能查看而不能改变的属性。

9、什么是事件?

事件就是对一个组件的操作。如用鼠标点击一个命令按钮,在这里,点击鼠标就称为一个事件(C lick事件)。

10、什么是方法?

方法就是某个事件发生后要执行的具体操作,类似以前的程序。例如当我们用鼠标单击“退出”命令按钮时,程序就会通过执行一条命令而结束运行,命令的执行过程就叫方法。

C++面向对象程序设计基本原理

使用面向对象程序设计的思想和方法进行系统设计和编程,从根本上解决了从现实世界的问题空间到计算机解空间的直接映射,使所设计的系统能更加准确地模拟现实世界;同时面向对象的系统从程序的结构、运行机制上保证了程序的安全性,灵活性;大大提高了程序代码段的复用性,易维护性和易扩展性。因此,面向对象程序设计已经取代了面向过程程序设计成为当前程序设计(特别是复杂大系统的设计、编程)的主流方法,是软件开发人员的必备素质。面向对象程序设计课程主要阐述面向对象技术程序设计的基本原理和基本技术,使学生深刻理解面向对象技术所带来的观念改革,掌握一种面向对象程序设计语言和面向对象设计的思维方式、规则与基本方法,了解面向对象程序设计技术的发展趋势。

第一~五章面向对象程序设计的理论

基础知识:

1、面向对象的程序设计方法和传统的程序设计方法相比,面向对象的程序设计具有抽象、封装、继承和多态性等特征。

2、面向对象语言鼓励程序员以抽象的观点看待程序,即程序是一组抽象的对象组成的

3、封装要求一个对象应具备明确的功能,并具有接口以便和其他对象相互作用。

4、继承就是一个对象可以获得另一个对象的特征。

5、不同的对象可以调用相同名称的函数,并可导致完全不同行为的现象称为多态性。

6、面向对象的分析与设计

7、需求分析,设计,演化,维护,面向对象设计的方法

基本理论:

1、对象的封装性

2、继承的理论

3、多态性理论

4、面向对象程序分析与设计理论

5、面向对象设计方法学

第六章从C向C++的过渡

基础知识:

1、除了C的注释方式以外,C++ 还提供了新的注释方式,即每行以两个正斜线开始。

2、C++ 不需要标准头文件有任何扩展名,而.h 扩展名对于用户定义的头文件却是必须的。

3、C++ 提供了作用域解析运算符(::),它可以用来访问与局部变量同名的全局变量。

4、声明变量时,C++ 使用关键字const 。与使用#define 指令创建常量不同的是,使用const 创建的常量类型和值可以被检查。

5、C++ 的I/O 方法基于输入\ 输出流对象(通常是cout 和cin )和运算符的使用。流析取运算符(>> )和流插入运算符(<< )可以用于输入/ 输出任何类型的值,包括用户定义的类型。

6、调用普通函数会增加运行时的系统开销,降低程序的运行速度。C++ 提供的内联函数比C 中用于消除系统开销的宏功能更强大。

7、默认参数用于设计在运行时被调用的拥有不定数量参数的函数。它们应该在参数列表中

8、C++ 提供了比 C 语言更加高效和方便的方式来实现动态内存分配。它使用new 和detele 运算符在运行时分配和释放内存。

基本理论:

1、C++是一种面向对象的程序设计语言。它使得程序的各个模块的独立性更强,程序的可读性和可移植性更强,程序代码的结构更加合理,程序的扩充性更强。这对于设计、编制和调试一些大型的软件尤为重要。

2、C++ 比C更严格,编写程序时,迫使编程人员遵守严格的规则,从而避免了一些类型的错误的发生。

3、C++可以被定义成C的超集。因此,只要对代码进行稍微的修改,任何C++ 编译器都可以编译C语言程序。

4、处理函数原型时,C++ 比C 更严格。它要求必须显式指定函数原型的所有元素。这种严格性会防止程序发生某些错误。

基本技能:

1、掌握C++与C的不同点,为编写面向对象的C++程序打下基础。

2、掌握标准输入/输出流(cin和cout)和输入/输出运算符(>>和<<)的使用。

3、掌握const修饰符,内联函数inline、函数原型、函数的缺省参数、函数重载的使用,作用域运算符(::)的使用。

4、掌握动态内存分配与new和delete关键字

5、理解变量存储类型与存储区的关系,变量存储类型与存储区的关系

第七章类和对象及其封装性

基础知识:

1、对象是把相关的数据和操作数据的函数组织在一起的单独的实体。

2、在C++ 中struct 关键字在声明结构变量时可以省略。

3、通过private 访问指示符可以隐藏结构中的数据。

4、类成员的默认的访问指示符是private ,而结构成员的默认访问指示符是public

5、成员函数既可以使内联成员函数,也可以是非内联成员函数。

6、类对象或者对象数组可使用new 和delete 运算符在运行时分配和销毁。

7、构造函数在对象实例化时自动调用。

8、类的析构函数在对象超出作用域时自动调用。

9、类构造函数用来动态分配内存,类析构函数用来释放该内存。

10、C++ 编译器可以创建和使用一种称为this 指针的特殊的指针类型。this 指针保存了用来调用非静态成员函数的对象的地址。

11、C++ 提供了一种称为副本构造函数(copy constructor )的特殊的构造函数。

12、与常规的数据成员不同, 静态数据成员不属于类的任意特定的对象。相反,它们属于类本身。

13、成员函数也可以声明为静态的,方法是在类定义中的函数返回类型前置static 关键字。值得注意的是,静态成员函数可以从相互链接的不同程序调用。

14、const 成员函数是一种特殊类型的成员函数。与常规的非常量成员函数不同,const 成员函数不能修改用来调用函数的对象。调用成员函数的对象通过this 指针传递给函数。15、可以定义指向对象成员的指针。

基本理论:

1、与关注于过程或者函数的过程化编程不同,OOP 关注于数据和对数据执行的操作。

2、OOP 技术在处理大型的、复杂的问题时,其效率要大大优于过程技术。它解决问题的方法类似于解决现实生活问题的方法,与人工( artificial ) 的过程化逻辑有很大差别。

3、使用过程化编程技术的程序员关注与程序的功能,过程化程序可以被描述为带有开放数据流的函数或者过程的集合。

4、OOP 技术提供了解决过程化编程技术的问题所需的工具。它的概念基于对象的使用。

5、类与扩展的结构类似,可以把相关的数据和函数组织在一起,而对象是类的实例。

6、C++ 类使用一种称为构造函数的特殊成员函数来初始化类对象。一个类可以拥有任意多个需要的构造函数。

7、一种称为析构函数的特殊的函数用来清除类对象。一个类只能有一个析构函数。

8、拷贝构造函数重载了一个常规的类构造函数。与在新对象实例化时调用的常规的构造函数不同,副本构造函数在对象复制时创建。

基本技能:

1、掌握和综合应用类的定义(C++类的定义),类的成员(私有成员和公有成员),类成员函数的作用和定义方法。

2、掌握和综合应用构造函数的一般概念和定义,参数化的构造函数,带缺省参数的构造函数。

3、掌握和综合应用多构造函数,拷贝构造函数,析构函数的一般概念和定义。

4、掌握对象数组的声明,类的指针变量声明,使用对象指针引用对象成员,应用类的组合和对象成员。

5、掌握this指针的灵活运用。掌握静态数据成员的定义、访问,静态成员函数的定义调用。

6、掌握常对象、常成员函数与常数据成员的定义和使用。

7、理解指向类的成员数据的指针和指向类的成员函数的指针。

8、理解通过接口与实现方法的分离来保证封闭性。

程序设计的几个基本概念

1.高级语言和汇编语言,以及机器语言的区别和联系。

计算机是不懂得我们的语言的,计算机处理数据、执行的命令,都是以0 和1 这样的数字形式存在的。机器语言是用1 和0数字表示的指令和数据,非常的生涩,几乎不会有人直接使用它书写程序。于是,人们使用更方便理解的、具有一定意义的文字的命令去一一对应这些机器语言。这样相当于提供了一种人可以接受的机器语言形式,这就是汇编语言。汇编语言与机器语言的对应关系非常直接,非常简单,这就使得机器语言与汇编语言之间,存在一种很直接的相互转换过程,绝大多数汇编语句都可以直接与机器语言对应。汇编的过程,就是一个汇编程序将一个文本形式的汇编源代码(比如*.asm 文件)翻译成机器语言的过程。

由于汇编语言的操作非常细致,因此要完成一个简单的动作,就需要大量的语句。而且书写起来不够直观。因此人们制定了高级语言规范(比如C,C++,Java,BASIC 等)。并设计开发了高级语言编译器。编译器是把高级语言的源代码文件转换成对应平台的目标代码(机器语言)的程序。经过高级语言的编译器编译之后,得到的目标程序(比如EXE),它的指令类似与上面描述的一长串机器语言指令。

这样的高级语言书写形式,更符合人们的习惯。也更容易理解和修改。这样的形式也更容易方便的完成一些列的动作。更简单直接。也因为这样的书写方式更远离机器语言,因此翻译这样的高级语言源代码也就更复杂,设计高级语言编译器的难度就更大。同一段高级语言代码,经过不同的编译器编译,得到的目标程序是不同的,而且区别会很大。

不同操作系统,不同平台下,需要不同的目标程序。而人们书写代码之后,往往希望能够应用到不同的操作系统或平台。因此,高级语言可以一定程度上满足这种需求。同样的高级语言代码,经过Windows 下Win32 编译器编译,可以得到程序的Win32 版本;经过.NET 平台编译器编译,可以得到程序的.NET 版本;在Linux 下,用Linux 下的编译器编译,又可以得到程序的Linux 版本。当然了,这样的跨平台,只是针对源代码而言的。如果要向另一个平台转移,一般是需要重新编译,重新获得目标程序的。而不是一个高级语言书写的程序,获得的目标程序就可以在不同平台上运行。

实际上,很多程序,在书写的初期,就使用了某些平台的特性(比如涉及注册表的内容,就只能在Windows 下使用)。这样,就决定了他们只能在某个平台上使用,在其他平台上编译,会出现错误。或者源代码需要一定的改动。

正因为高级语言与汇编/机器语言的对应关系不再是单一的一一对应关系,因此,人们制定了很多高级语言规范(比如C,C++,Java,BASIC,Java 等),以满足不同的需要。而同一

种高级语言规范,全世界各个开发商,又开发了不同的编译器(比如C++ 的编译器就有微软的Visual C++,Borland 的C++ Builder 等)。这些编译器哪个更好,也不是三言两语可以说清楚的。它们都各有各的长处,各有各的应用领域,而每个程序员也都有自己的习惯,需求。

作为一个商业的编译器产品来说,除了编译器,更多的,还有为书写代码方便而提供的代码编辑器,编辑环境(IDE),调试器,各种库文件,头文件,说明书,帮助文档,演示代码等。这就使得本来应该很小的编译器(最多几个MB),在成为一个编译器产品后,变得十分庞大(多达几百MB,甚至几个GB)。

对于大多数编译器来说,都有自己面向的高级语言规范和目标平台。比如Visual C++ 面向C++ 语言的源代码,目标平台是Windows 的Win32 平台。当然有些编译器也可以生成.NET 平台的目标程序。因为高级语言规范是逻辑上的规定,它是不依赖于平台的,因此语法规范上通常都没有涉及到具体实现的细节。这些细节,是交给编译器去发挥的。因此,大多数人学习一门语言之后,还很奇怪,为什么这些和自己接触到的很多计算机知识(比如注册表,对话框等等)联系不上,自己书写的程序为什么还是一个黑黑的,像DOS 一样的窗口?

这是因为,类似注册表,对话框,图标这些特征。都是依赖于平台的,比如只有Windows 操作系统才有注册表,而不同操作系统的对话框或各种按钮,实现的细节不同。语法规范上一般不会对这些做出规定。是商业化的编译器为了让用户使用这些平台相关的特征,才会附带一系列的扩展功能(比如对Windows API 的支持,对OpenGL 的支持等)。正是使用它们,才能设计出各种漂亮的界面化的窗口程序。

实际上,这种黑黑的像DOS 一样窗口的程序,有一个名词,叫做Console(控制台)程序。它们区别于有界面的那些GUI (图形用户界面)程序。我们熟悉的QQ,迅雷这些商业软件都是GUI 程序。WinRAR 也是GUI 程序。

但是,请不要忽视了Console 程序的地位。我们使用的编译器自身,绝大多数都是Console 程序;WinRAR 的内核:rar.exe 也是Console 程序。Console 程序大多数来说,是内涵型的。他们没有华丽的外表,却往往在后台默默的工作,不为人知。

作为学习程序设计来说,我们应当首先对语法规范有足够的了解,对数据结构的理解,对算法的理解,对逻辑层次的理解,这些都是非常重要的。不要因为自己还在设计Console 程序,而别人已经能够设计漂亮的界面了,就感到自卑,等你熟悉了算法,数据结构,编程思想之后,再去学习附带的扩展的界面化的功能,就会十分的轻松了。

实验四-循环结构汇编语言程序的设计实验报告

循环结构汇编语言程序设计实验报告

实验四循环结构汇编语言程序设计 一、实验目的 1、学习循环结构的汇编语言程序的设计和调试。 2、学习通过直接对8086计算机的寄存器和存的直接访问,编写更高效简洁的汇编程序。 3、加深掌握计算机整体的工作过程。 3、加深对排序算法的理解。 二、实验任务 编写程序求出数组A中(20个元素)的最大值和最小值(数组没有排序)。 要求至少采用二种不同的排序算法来实现。( 快速排序,归并排序、堆排序、Shell排序、插入排序、冒泡排序、交换排序、选择排序、基数排序……) 三、实验容 为了更好地实现老师所布置的实验任务,我们根据情况选取以下两种方式实

验。 1、利用冒泡排序的方式求解数组A中元素的最大值最小值。设计流程图如 下所示: 2、利用选择排序的方式求得数组A中元素的序列。设计流程图如下所示:

四、实验环境 PC机: winXP/win7(32位)/win7(64位)+winxp 虚拟机 汇编工具:Masm.exe+Link.exe。 五、实验步骤 1)建立和生成的文件 (1)编写的源程序,源程序名为abc、扩展名为.asm (2)源程序经汇编程序Masm.exe汇编(翻译)后生成二进制目标程序,文件名为abc.obj (3)目标程序需要经Link.exe连接生成可执行程序,文件名为abc.exe 2)汇编环境 最基本的汇编环境只需要两个文件:Masm.exe和Link.exe。将这两个文件拷入到已经建好的文件夹(例如 huibian)中,并将文件夹huibian放在硬盘根

目录C :\>下 3)上机步骤 进入DOS窗口中执行。 4)调试程序 进入DEBUG后,调试程序 5)调试成功后重新汇编、连接并生成可执行代码 6)执行程序,并对运行结果截图。 利用冒泡排序求得数组A中元素的最大值最小值的实验结果如下图所示:(说明:输入数据为:13,0,59,900,587,1,657,234,34,48) 利用选择排序对数组A中元素排序得到的序列得实验结果如下图所示:(说明:输入数据为13,0,59,900,587,1,657,234,34,48)

汇编语言程序设计实验报告

微机原理实验报告 实验名称汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH, 97H,64H,BBH,7FH,0FH,D8H。编程并显示结果:如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H 的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD 码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再 将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 第1页

99223344H = xxxxxxxxH 四、实验代码及结果 实验代码见代码附录 1.1程序运行结果 图1 无符号最大值结果截图 1.1 程序运行结果

图2 有符号最大值截图2.0 程序运行结果

图3 BCD码显示3.0 程序运行结果

图4 ASCII码显示4.0 程序运行结果

图5 移动次数显示5.0 程序运行结果

程序设计基础知识点)

第三部分程序设计基础 3.1 程序、程序设计、程序设计语言的定义 ⑴程序:计算机程序,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。 ⑵程序设计:程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。 ⑶程序设计语言:程序设计语言用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。 3.2 高级语言和低级语言的概念及区别 ⑴高级语言:高级语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。

它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。 ⑵低级语言:低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密切相关。机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。 ⑶区别: 高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差 了解知识:CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码。越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一对应的。而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层操作进行了抽象和封装,

第01章电路的基本概念与基本定律

1 一、例题精解 【例题1.1】在图1.1中,在开关S 断开和闭合的两种情况下,试求A 点的电位。 【解】(1)开关S 断开时 先求电流 89.03 9.320) 12(12=++??=I mA 再求20 k 电阻的电压 U ?20 = 0.89×20 = 17.8V 而后求A 点电位V A 12-V A = 17.8V V A =12-17.8 =8.5?V (2)开关S 闭合时 20k ?电阻两端的电压为 04.10209 .3200 1220=×+?=U V A 点电位为 V A = 12- 10.04 = 1.96V E 1R 1 A 图1.1 例题1.1的图 图1.2 例题1.2的图 【例题1.2】电路如图1.2所示。已知E 1= 6V ,E 2 = 4V ,R 1 = 4?,R 2 = R 3 = 2。求A 点电位V ?A 。 【解】 1246 2111=+=+=R R E I A I 2 = 0A 所以 V A =V 2214021232?=×+?=+?R I E R I 或 V A =V 264140111232?=+×??=+??E R I E R I 【例题1.3】电路如图1.3所示。已知R 1 = R 2 =1?,R 3 = 7?,R 4=2?,E 1=10V , E 2 = 8V ,E 3 = 9V 。求电流I 及A 点电位V A 。 1E 4 R 3R A 图1.3 例题1.3的图

电工学试题精选与答题技巧 2【解】 由基尔霍夫电压定律有 113IR E E =?则 A 11 10 91131?=?=?= R E E I 又因为 2223R I E E =?所以 118 92232=?=?=R E E I A 由分压公式有 29272 34344=×+=+=E R R R U V V A =U V 112224=?=?R I 【例题1.4】把额定电压110V 、额定功率分别为100W 和60W 的两只灯泡,串联在端电压为220V 的电源上使用,这种接法会有什么后果?它们实际消耗的功率各是多少?如果是两个110V 、60W 的灯泡,是否可以这样使用?为什么? 【解】 两只灯泡的电阻 ?===121100 1102 1N 2N 1P U R ?===202601102 2N 2N 2P U R 每只灯泡两端的实际电压值 4.82220202121121 2111=×+=+=U R R R U V 6.137220202 121202 2122=×+=+=U R R R U V 因为U 1U N ,60W 灯泡超过额定电压,会被烧坏。 两个灯泡实际消耗的功率 561214.822 1211===R U P W<100W 7.93202 6.1372 2222===R U P W>60W 两个110V 、60W 的灯泡是可以串联使用的,因为它们的电阻相同,每个灯泡两端的电压也相同,都能达到额定值。这样接法的缺点是,若有一只灯泡坏了,另一只也不能发光。 【例题1.5】在图1.4所示的电路中,欲使灯泡上的电压U 3和电流I 3分别为12V 和0.3A ,求外加电压应为多少? 【解】已知U 3 = 12V ,I 3 = 0.3A ,可求得 6.020 12 4== I A A 9.06.03.0432=+=+=I I I

汇编语言程序设计报告模板总结模板计划模板.docx

《汇编语言》课程设 计报告 专业计算机科学与技术 学生姓名张竹青 班级Z计算机 151 学号1560704132 任课老师王志宏 完成日期2017年12月29日

目录 1 概述 (1) 1.1 设计目的 (1) 1.2 设计内容 (1) 2 系统需求分析 (1) 2.1 系统目标 (1) 2.2 主体功能 (1) 2.3 开发环境 (2) 3 系统概要设计 (2) 3.1 系统的功能模块划分 (2) 3.2 系统流程图 (3) 4 系统详细设计 (4) 4.1 界面设置 (4) 4.2 选择算法设置 (4) 4.3 十进制转换设置 (4) 5 测试 (5) 5.1 测试方案 (5) 5.2 测试结果 (5) 6 小结 (6) 参考文献 (7)

实现加减乘除四则运算的计算器 1 概述 1.1 设计目的 使用汇编语言,通过实现简单计算器的一般功能,如加、减、乘、除的计算来 了解并掌握 DOS系统功能的调试方法,学会画出编程的具体流程图,同时在程序 设 计过程中熟悉各种指令的应用和意义,以及如何进行上机编辑、汇编、连接和调试。 本课程设计也是对课堂上所学的基本理论知识和程序设计方法的巩固和深化, 提高我们的编程思想、分析问题和解决问题的综合应用能力,能够编写较复杂的应 用程序,最终达到熟练地掌握结构化程序设计技术和编写汇编源程序的基本方法的 目的。 1.2 设计内容 设计一个能实现加、减、乘、除计算的程序,要求该程序接受从键盘输入的十 六进制数,当程序执行时需在文件名后直接跟上计算表达式,每当读到一个有效的 表达式时对表达式进行相应的运算后,输出用十进制数或十六进制数表示的运算结果,如在命令提示符下执行结果如下: c:\tasm>js 3+2 5 2系统需求分析 2.1 系统目标 本次汇编语言课程设计的最终目的是要实现一个简单的加减乘除四则运算的 计算器,要求编写一个程序,每运行一次可执行程序,可以实现数的加减乘除四则 运算。具体功能如下: (1)调用中断把要做运算的两个数输入到屏幕上并用程序将他们存储起来 (2)判断用户所输入的运算是四则运算中的哪一种运算 (3)判断运算过程中是进位还是借位 (4)选择用何种输出方式 (5)实现清屏 2.2 主体功能 要求该程序接受的是十六进制数,执行相应的计算后,计算结果以十六进制数 或十进制数输出。本设计的使用说明如下: (1)按照提示选择数字 1,2,3,4 (2) 1: ADD 加法 (3) 2: SUB 减法 (4) 3: MUL 乘法

时序逻辑电路51时序逻辑电路的基本概念1时序逻辑电路

第5章时序逻辑电路 5.1 时序逻辑电路的基本概念 1.时序逻辑电路的结构及特点 时序逻辑电路在任何时刻的输出状态不仅取决于当时的输入信号,还与电路的原状态有关,触发器就是最简单的时序逻辑电路,时序逻辑电路中必须含有存储电路。时序电路的基本结构如图 5.1 所示,它由组合电路和存储电路两部分组成。 图5.1 时序逻辑电路框图 时序逻辑电路具有以下特点: (1)时序逻辑电路通常包含组合电路和存储电路两个组成部分,而存储电路要记忆给定时刻前的输入输出信号,是必不可少的。 (2)时序逻辑电路中存在反馈,存储电路的输出状态必须反馈到组合电路的输入端,与输入信号一起,共同决定组合逻辑电路的输出。 2.时序逻辑电路的分类 (1)按时钟输入方式 时序电路按照时钟输入方式分为同步时序电路和异步时序电路两大类。同步时序电路中,各触发器受同一时钟控制,其状态转换与所加的时钟脉冲信号都是同步的;异步时序电路中,各触发器的时钟不同,电路状态的转换有先有后。同步时序电路较复杂,其速度高于异步时序电路。 (2)按输出信号的特点 根据输出信号的特点可将时序电路分为米里(Mealy)型和摩尔(Moore)型两类。米里型电路的外部输出Z既与触发器的状态Q n有关,又与外部输入X有

关。而摩尔型电路的外部输出Z仅与触发器的状态Q n有关,而与外部输入X无关。 (3)按逻辑功能 时序逻辑电路按逻辑功能可划分为寄存器、锁存器、移位寄存器、计数器和节拍发生器等。 3.时序逻辑电路的逻辑功能描述方法 描述一个时序电路的逻辑功能可以采用逻辑方程组(驱动方程、输出方程、状态方程)、状态表、状态图、时序图等方法。这些方法可以相互转换,而且都是分析和设计时序电路的基本工具。 5.2 时序逻辑电路的分析方法和设计方法 1.时序逻辑电路的分析步骤 (1)首先确定是同步还是异步。若是异步,须写出各触发器的时钟方程。(2)写驱动方程。 (3)写状态方程(或次态方程)。 (4)写输出方程。若电路由外部输出,要写出这些输出的逻辑表达式,即输出方程。 (5)列状态表 (6)画状态图和时序图。 (7)检查电路能否自启动并说明其逻辑功能。 5.2.1 同步时序逻辑电路的设计方法 1.同步时序逻辑电路的设计步骤 设计同步时序电路的一般过程如图5.10所示。 图5.10 同步时序电路的设计过程

(完整版)《C语言程序设计》基本知识点

《C语言程序设计》教学基本知识点 第一章C语言基本知识 1.C源程序的框架 尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 2.C语言源程序的书写规则: (1)C源程序是由一个主函数和若干个其它函数组成的。 (2)函数名后必须有小括号,函数体放在大括号内。 (3)C程序必须用小写字母书写。 (4)每句的末尾加分号。 (5)可以一行多句。 (6)可以一句多行。 (7)可以在程序的任何位置加注释。 3.语句种类 语句是程序的基本成分,程序的执行就是通过一条条语句的执行而得以实现的,根据表现形式及功能的不同,C语言的基本语句可以分为五大类。 (1)流程控制语句 流程控制语句的功能是控制程序的走向,程序的流程有三种基本结构:顺序结构、分支结构和循环结构,任何复杂的程序都可以由这三种基本结构复合而成。其中后两种结构要用特定的流程控制语句实现。 (2)表达式语句 表达式语句的形式是:表达式;,即表达式后跟一分号“;”,分号是语句结束符,是一个语句必不可少的成分。表达式和表达式语句的区别在于表达式代表的是一个数值,而表达式语句则代表一种动作。最常见的表达式语句是赋值语句。 (3)函数调用语句 函数调用语句实际上也是一种表达式语句,形式为:在一次函数调用的小括号后面加上一个分号。 (4)空语句 空语句的形式就是一个分号,它不代表任何动作,常常作为一个意义转折点使用。 (5)复合语句 复合语句从形式上看是多个语句的组合,但在语法意义上它只相当于一个语句,在任何单一语句存在的地方都可以是复合语句。注意复合语句中最后一个语句末尾的分号不能少。复合语句右大括号后面没有分号。 4.运算符 用来表示数据各种操作的符号称为运算符。运算符实际上代表了一种类型数据的运算规则。不同的运算符具有不同的运算规则,其操作的数据类型必须符合该运算符的要求,运算结果的数据类型也是固定的。 根据参加操作的数据个数多少,可以将C语言的运算符分为单目运算符,双目运算符和三目运算符(三目运算符只有条件运算符一个)。 根据运算对象和运算结果的数据类型可分为算术运算符、关系运算符、逻辑运算符等。 5.表达式 表达式是由常量、变量、函数,通过运算符连接起来而形成的一个算式。一个常量,一个变量或一个函数都可以看成是一个表达式。 表达式的种类有: 算术表达式、关系表达式、逻辑表达式、赋值表达式、字位表达式、强制类型转换表达式、逗号

《汇编语言程序设计》学习心得自主学习报告.doc

自主学习报告书 题目:学习汇编语言程序设计报告学习课程:《汇编语言程序设计》姓名: 专业: 学号: 福建工程学院国脉信息学院教务处制 二○一二年六月

学习汇编语言程序设计报告书 由于实际工作中对汇编语言程序设计应用较多,在业余时间我自主学习了北京大学出版社出版的《汇编语言程序设计》一书。这一本书介绍了80x86汇编语言程序设计的方法和技术,共分为两个部分:第一部分介绍80x86cpu的编程结构,汇编语言程序的格式和伪指令,80x86cpu的寻址方式和指令系统;第二部分深入讨论分支程序、循环程序、子程序基本程序设计方法,以及以中断为主的i/o程序设计,其中包括宏指令、多模块连接技术、汇编语言与高级语言的混合编程、dos和bios提供的常用中断调用,以及文件系统等内容。 通过本书,我深入的掌握了汇编语言的编程方法、思路和技巧,并对计算机的底层编程有一定认识;还对计算机底层运行程序的机制及计算机的工作原理有了深入的了解。 在学汇编的过程中,最重要的就是要掌握汇编语言中的指令的一些基本用法。当然要能够真正的了解其中的内涵,这样在实际的编程中也能够像运用高级语言一样灵活的变通。汇编语言作为一种低级程序设计语言,既然是低级所以应该是最底层的,与计算机内部的结构联系应该联系很密切,而且我在学习中也深刻的了解到了这一点。比如说后来学到的寄存器、中断、还要各种寻址方式以及进栈出栈,好多的就是设计到计算机硬件。前面几章都是对计算机内部结构和一些常用的指令以及寻址方式的寻址方式。到后面学到子程序以及宏的作用才真正发现到其实跟高级语言差别不大。以C语言为例,C语言也

是由一个一个的函数组成的。没想到想汇编这样的低级语言也可以这样。在汇编语言的子程序和宏中,我个人更感觉宏的运用更像我们高级语言的子函数,通过定义好的宏,我们在后面直接调用就可以了。尤其是宏带参数的宏跟C语言中带参数的函数真的很像,根据参数的不同调用宏就能得到不同的结果。而汇编中的子程序没有这个传递参数这个功能。在调用子程序的时候要注意各寄存器中的内容。子程序是在程序执行期间由主程序调用的,它只占有它自身大小的一个空间,他不仅是源程序级别简化,形成的目标代码较短;而宏调用则是在汇编期间展开的,每调用依次进把宏定义体展开一次,它是源程序级的简化。因而它占有的存储空间与调用次数有关,调用次数越多则占有的存储空间越大。如果宏调用次数较多的话,则其空间上的开销也是应该考虑的因素 汇编程序给人感觉最烦的就是好多程序的结果不能直接通过运行EXE文件显示出来,而更多的是经过DEBUG单步调试才能看到其内在变化,看是否正确。汇编程序不像其他的高级语言一样需要编译器,而是直接的就能在记事本上编写,然后进行汇编和连接就可以了。学习汇编调试,关键就是要掌握DEBUG的运用。汇编程序把汇编语言翻译成机器语言的过程称为汇编。是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。比机器语言易于读写、调试和修改,同时具有机器语言全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植。

第一章 编程的基本概念

第一章,编程的基本概念 首先,作为介绍编程的基础章节,第一点要明白的就是什么是编程。 编程,简单来说就是为了让笨笨的计算机理解我们想让他干什么而编写程序(指令)。如果计算机没有了我们为他设定好的程序,那么它连“吃奶”都不懂得是什么回事,它的最初形态是只认识1和0的怪家伙,傻得很~ 我们通过编程,教会计算机在什么样的情况下应该如何处理问题,教会他1+1的情况是等于2,我们甚至不用跟他说为什么会这样,因为它不需要理解,它只需要按照我们编写的程序去执行,就可以了。 那么如何可以让计算机按照我们所想的去工作呢? 文中红色部分由小甲鱼提供,在此表示感谢。 1.1计算机语言 如果我们现在去百度搜索一下,什么是计算机语言,网上一定会有很多的答案。但是他们无非是介绍一门语言的作用,语法啊,优缺点等等。但是对于没有编程基础的人来说,这些简直就是天书。下面要先介绍一下什么是计算机语言。 首先,我们抛去“计算机语言”中的前三个字,只剩下“语言”。我相信这个词汇一定很熟悉。什么是语言?语言的作用是什么? 像中文,英文,俄文,日文这些都是语言,几乎每个国家或者地区都有自己的语言。语言是用来沟通的,如果我们都会同一门语言,那么我们的交流与沟通是很方便的。但是如果我们使用不同的语言,沟通的难度可想而知。 那么,在刚开始我提到过,计算机只不过是一个很笨的工具,我们需要告诉计算机怎么样去做。可以让计算机明白人的意思的语言便叫计算机语言。 1.2计算机可以“听”的懂什么语言? 和我们学习英语一样,首先要学习字母,然后学习单词,然后学习词组和句子,最后可以用句子来组成文章。通过一篇完成的文章可以表达出我们的意思,别人也可以看的明白。 计算机也是一样,但是计算机不可能像我们人类一样,计算机不可能学习一下汉语来和我们交流。计算机只能识别由1和0组成的二进制代码,也称为机器语言。也就是说,在计算机语言中,字母就是0和1,单词或者词组,就是0和1的各种组合,句子就是更多的0和1的组合所组成的。在计算机语言中,

《汇编语言程序设计》实验报告(一)

《汇编语言程序设计》实验报告(一) 姓名学号系别班级 指导教师实验日期 课程名称《汇编语言程序设计》同组实验者 一、实验名称:实验一汇编程序和连接程序的使用 二、实验目的: 1. 熟悉汇编语言的上机环境; 2. 学习EDIT,MASM,LINK程序的使用; 3. 掌握建立、汇编、链接、运行汇编语言程序的过程。 三、实验类型:验证 四、实验材料、工具、或软件 多媒体计算机、WINDOWS XP系统或纯DOS系统、MASM6.11以上版本或汇编语言程序设计实验集成环境。 五、实验要求 1. 编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示‘MATCH’,若不相同则显示‘NO MATCH’。用串比较功能来完成程序所要求的功能。 2.完成课堂例题,并用DEBUG运行,观察结果。 六、试验内容与步骤:(附上必要的调试过程及运行结果截图,可加附页) 试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示‘MATCH’,若不相同则显示‘NO MATCH’。用串比较功能来完成程序所要求的功能。上机步骤如下: 1、调用https://www.docsj.com/doc/8823295.html,程序建立汇编语言源程序.ASM 建立好的源文件以EX_1.ASM为文件名存盘 DATA SEGMENT STRING1 DB 'Visual C++ ' STRING2 DB 'Visual Basic' COUNT EQU $-STRING2 MESS1 DB 'MATCH!’,13,10,’$' MESS2 DB 'NO MATCH!’,13,10,’$' DATA ENDS code segment assume cs:code,ds:data,es:data main proc far start: push ds

最新程序设计基本概念

第一章程序设计基本概念 1.1程序和程序设计 程序:连续执行的一条条指令的集合称为“程序”。 对于计算机来说,它不能识别由高级语言编写的程序,它只能接受和处理由0和1的代码构成的二进制指令或数据。由于这种形式的指令是面向机器的,因此也被称为“机器语言”。所以所有由高级语言编写的程序都要经过编译,编译成二进制代码。这种具有翻译功能的软件称为编译程序。 语言有很多种,我们现在要谈论的就是C语言。为什么计算机会能进行各种各样的操作,就是由不同的指令来实现的。而不是只有C语言才可以实现这样的功能。还有其它很多语言。但是我们一般说C语言是其它语言的母语。会了C语言其它的语言在学习的过程就会感到轻松一些。 1.1.2程序设计 1.确定数据结构 2.确定算法 3.编码 4.在计算机上调试程序 5.整理并写出文档资料 1.2算法 定义:是指为了解决某个特定的问题而采取的确定且有限的步骤。 1.有穷性 2.确定性 3.可行性 4.有零个或多个输入 5.有一个或多个输出 1.3结构化程序设计和模块化结构 结构化程序由三种基本结构组成 顺序结构 1. 2.选择结构

3.循环结构

12)计算机能直接执行的程序是(B )。 A)源程序 B)目标程序 C)汇编程序 D)可执行程序 13)以下叙述中正确的是( D ) A)程序设计的任务就是编写程序代码并上机调试 B)程序设计的任务就是确定所用数据结构 C)程序设计的任务就是确定所用算法 D)以上三种说法都不完整 第二章:C程序设计的初步知识 2.1 C语言程序的构成和格式 #include Main() { double a,b,area; a=1.2,b=3.6; /*将矩形的两条边长分别赋给a和b 变量*/ area=a*b; printf(“a=%f,b=%f,area=%f\n”,a,b,area);/*输出矩形的两条边长和面积*/ } #include :每当写一个程序时,第一条语句永远是这个语句,因为一个程序可以没有输入但必须要有输出,而这个语句就是控制输入输出的。所以任何一个程序都必须由这个语句开始。 Main():是一个程序的主函数。一个程序是由多个函数组成的,而任何一个程序都要有一个主函数,有且只有一个。任何程序都是由主函数开始执行的。 {}:它们两个必须要成对出现,它们中的语句是主函数体。包括定义部分和执行部分。它们中的语句,每一条必须由;结束。;是C语句的一个组成部分而不是一个结束标识。 /**/:注释符一定要成对出现,不允许嵌套。两个符号间的语句不被执行。 例年真题: #include

汇编语言程序设计

汇编语言程序设计 实验报告 实验名称上机过程及顺序结构与分支结构程序设计实验班级 学号 姓名 日期2017年10月26号 成绩 评阅人 软件学院

一、实验目的与意义 理解并熟练掌握汇编语言程序设计过程中的编辑、汇编、链接和调试等各个步骤,提高对汇编课程内容的理解和汇编语言的掌握,通过上机练习加深对课程内容的理解和掌握。通过汇编语言编制的程序上机调试、运行检验程序设计是否正确。熟悉和掌握编辑、汇编、连接和调试四个实用程序的使用方法,掌握调试程序中的几个常用命令的使用方法。熟悉其基本的指令操作,debug调试操作命令以及分支结构、顺序结构和循环结构的程序设计。 二、实验环境 操作系统:Microsoft Windows8 集成环境:Masm for Windows 上机地点:信息楼B405教室 三、实验的预习内容 预习的主要内容: 1. 使用DEBUG命令的方法; 2. 熟悉掌握从理论上定义数据的类型(即DB,DW,DD,); 3. 分支结构和顺序结构的步骤以及相关的指令; 4. 常用的标志位状态及相应的作用; 实验思路: 在对题目进行分析后,分析出解题方法,并做出与实验思路相对应的程序框图。依照程序框图的内容输入相对应的代码,最终在调试代码后,发现并解决一系列的汇编语言错误。进一步优化算法。实验之前必须了解十进制、十六进制和ASCII码之间的转换。预习查表法相关命令,掌握顺序程序的结构,从键盘输入数据的命令及显示到屏幕上的命令。 实验一: 题目1:将程序编辑、汇编、连接并通过集成环境中的debug调试,观察运行结果;用E命令修改指定地址的数据,再用G命令执行程序查看变化,用A 命令将加法指令修改成减法指令,再将其编译运行,查看寄存器值变化的异同。 题目2:分别用DB、DW和DD数据段9H,0FAH,41H,27H,编译链接之后生成exe文件,再用debug的r命令找到数据段地址,用d命令指定数据段地址,观察汇编后在机器内部对应的存储情况。 实验二: 先设置数据段地址和堆栈段地址;设置堆栈段指针;读取一个字符然后存储在AL中;用BX来存储AL中字符对应的数值;将BX中的值作为偏移地址;并在数据段中查找对应字符串;最终输出结果结束程序。 实验三: 先初始化数据段地址与堆栈段地址;设置堆栈段指针;然后将数据段中的data1放入AL中;读取数据段中的data2并判断data2是否大于0;然后读取数

c语言程序设计基本概念考点归纳

第1章程序设计基本概念考点归纳 1.1 C语言的特点 C语言是近年来非常流行的语言,很多人宁愿放弃已经熟悉的其他语言而改用C语言,其原因是C语言有优于其他语言的一系列特点。下面是C语言的主要特点: (1)语言简洁、紧凑,并且使用方便、灵活; (2)运算符丰富; (3)数据结构丰富; (4)具有结构化的控制语句; (5)语法限制不太严格,使程序设计比较自由; (6)C语言允许用户直接访问物理地址,能进行位(bit)操作,可以直接对硬件进行操作。 1.2 源程序的书写规则 C语言的书写规则。C语言书写格式自由,一行内可以写几个语句,一个语句也可以分写在多行上。C程序没有行号,每个语句和数据定义的最后必须有一个分号。C语言中分号是语句中不可少的,即使是程序中的最后一个语句也应该包含分号。C语言中的注释可以用″/*″用″*/″结束,注释可以在任何允许插入空格符地方插入。C语言中注释不允许嵌套,注释可以用西文,也可以用中文。 1.3 C语言的风格 由于C语言对语法限制不太严格,为了保证程序的准确性和可读性,建议在书写程序采用阶梯缩进格式。也就是按如下格式书写C语言程序: **********; *****() { **********;

********; { ******; …… } *********; } 概括起来,C语言程序具有如下的风格: ①C语言程序的函数具体模块结构风格,使得程序整体结构清晰、层次清楚,为模块化程序设计提供了强有力的支持。 ②C语言的源程序的扩展名都是.C。 ③C语言中的注释格式为: /*注释内容*/ /与*之间不允许有空格,注释部分允许出现在程序中的任何位置。 ④C语言中的所有语句都必须以分号“;”结束。 第2章 C程序设计的初步知识考点归纳 2.1 程序的构成 尽管C程序的内容千变万化,但是它们的构成都是一致的,一个完整的C源程序的格式可以如下表示: 编译预处理 主函数() 函数()

52 面向对象程序设计的基本概念

一、教学目标 1、知识与技能 (1)认识面向对象程序设计中对象、类的概念及其特征。 (2)认识面向对象程序设计中类、对象和实例的关系。 2、过程与方法 (1)能够举例说明现实世界与程序世界的对象及其特征。 (2)能够举例说明现实世界与程序世界的类及其特征。。 (3)能够画图表示类、对象和实例三者的关系。 3、情感态度和价值观 (1)能关注面向对象程序设计的基本概念。 (2)能产生对对象、类等的认识的愿望。 (3)能认识到掌握对象、类的概念是学习面向对象程序设计的前提。 二、重点难点 教学重点: (1)对象及其特征。 (2)类及其特征。。 教学难点: (1)类及其特征。 (2)类的继承。 (3)类、对象和实例的关系。 三、教学环境 1、教材处理 教材选自广东教育出版社的信息技术(选修一)《算法与程序设计》第五章第二节,本节以理论为主。面向对象程序设计涉及到一些基本的概念,认识和理解类、对象的基本概念,以及类、对象和实例之间的关系是掌握面向对象程序设计的基础,是进一步学习面向对象功能实现的的前提。内容编排尽量贯彻原教材的意图展开。 教学方法采用讲解、学生自主学习和合作学习相结合的学习方法。 2、预备知识 学生已认识面向对象程序设计的基本思想,初步了解了类、对象等概念,通过比较得知两种程序设计方法的优劣所在。有了这些基础,学习者明显产生了想进一步学习面向对象设计知识的欲望。 3、硬件要求 本节内容是纯理论,可在普通教室上,也可选在多媒体电脑教室中完成,以供学生实践。 4、所需课时:1课时 四、教学过程 导入:1、简要介绍本节课的教学目标:紧密联系现实生活中的实例理解面向对象程序设计中的主要概念如对象、类及其关系,知道这些概念在面向对象思想中的重要性。 2、联系实际生活提问导入:现实生活中我们经常说到“类”这个概念,如人类、花类、鸟类等等。“人类”又可分为黑人、黄种人、白人等小类,这些小类可以具体到某个人如张三、李四、王五等。前面我们提到计算机软件的开发过程就是人们使用计算机语言将现实世界映射到计算机世界的过程。那么这些概念在面向对象程序设计中是采用怎样的机制来实现映射的呢?这节课我们来作充分的探讨。 (一)对象

汇编语言编程实验报告

汇编语言编程实验报告 学号: 姓名: 成绩:

目录 一、实验一: ................................................... 错误!未定义书签。 二、实验二: (4) 三、实验三: (8) 四、实验四: (10) 五、实验五: ................................................... 错误!未定义书签。 六、实验六: (19) 七、汇编实验总结 (23)

实验一 一.实验题目 【汇编语言补充作业T20】编写完整程序,利用DOS系统功能调用,从键盘输入一个字符串,并将该字符串从屏幕上换行后并输出。 二.程序流程及思路 实现字符串输入,需要分成三个步骤: 1、在数据段中定义一个缓存区为存放字符串做准备; 2、DOS系统功能调用0AH号子功能,(DS:DX)= 输入缓冲区首址; 3、在输入的字符串尾加上‘$’字符,以作为输出结束条件。 实现字符串输出,则需要注意的问题是: 1、缓冲区第三个字节才开始存放输入的字符,前两个字节分别存放缓冲区长度 和字符串实际字符数; 2、输出回车换行可利用字符串:CR DB 0AH,0DH,’$’。 三.源程序清单 DATA SEGMENT N EQU 50 MAXLEN DB N ;缓冲区字符的最大长度 ACTLEN DB ? ;实际字符个数 STRING DB N DUP(?) ;字符空间 CR DB 0AH,0DH,'$' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX LEA DX,MAXLEN MOV AH,0AH INT 21H ;字符串输入 MOV AH,09H LEA DX,CR INT 21H ;回车换行 MOV BL,MAXLEN+1 ;取实际的字符长度 MOV BH,0 LEA SI,MAXLEN+2 ;取字符开始的首地址

第1章 电路的基本概念与基本定律

第1章电路的基本概念与基本定律 一、填空题: 1. 下图所示电路中,元件消耗功率200W P ,U=20V,则电流I为 10 A。 U 2. 如果把一个24伏的电源正极作为零参考电位点,负极的电位是_-24___V。 3.下图电路中,U = 2 V,I = 1 A 3 A,P 2V = 2 W 3 W , P 1A = 2 W,P 3Ω = 4 W 3 W,其中电流源(填电流源或 电压源)在发出功率,电压源(填电流源或电压源)在吸收功率。 U 4. 下图所示中,电流源两端的电压U= -6 V,电压源是在发出功率 5.下图所示电路中,电流I= 5 A ,电阻R= 10 Ω。 B C 6.下图所示电路U=___-35 ________V。

7.下图所示电路,I=__2 __A,电流源发出功率为_ 78 ___ W,电压源吸收功率20 W。 8. 20.下图所示电路中,根据KVL、KCL可得U=2V,I1= 1 A,I2= 4 A ;电流源的功率为 6 W;是吸收还是发出功率发出。2V电压源的功率为 8 W,是吸收还是发出功率吸收。 V 4 9.下图所示的电路中,I2= 3 A,U AB= 13 V。 10.电路某元件上U = -11 V,I = -2 A,且U 、I取非关联参考方向,则其吸收的功率是22 W。 11. 下图所示的电路中,I1= 3 A,I2= 3 A,U AB= 4 V。

12.下图所示的电路中,I= 1 A;电压源和电流源中,属于负载的是电压源。 8V 13. 下图所示的电路中,I=-3A;电压源和电流源中,属于电源的是电流源。 8V I 14.下图所示的电路,a 图中U AB与I之间的关系表达式为 155 AB U I =+ ;b 图 中U AB与I之间的关系表达式为 510 AB U I =- 。 5Ω Ω I I A B B A 10V a图 b图 15. 下图所示的电路中,1、2、3分别表示三个元件,则U = 4V ;1、2、3这三个元件中,属于电源的是 2 ,其输出功率为 24W 。 + 8V 4V _ + + _ U 16.下图所示的电路中,电流I= 6 A,电流源功率大小为24 W,是在发出(“吸收”,“发出”)功率。

汇编语言程序设计实验报告

汇编语言程序设计 学生姓名:学号: 学院: 专业: 指导教师: 2011年 11 月 27日

实验三循环程序设计 一.实验目的 1.学习调试程序,查找逻辑错误; 2.掌握循环程序设计的方法; 3.掌握正确分配与使用寄存器。 二.实验内容与要求 题目1:数组中是一组无符号数,将最小数放在M单元中,经过汇编后,形成.EXE文件,先用G=0命令执行程序,用-D命令查看M单元的内容,会发现结果不正确。用单步执行命令T查找程序中的逻辑错误。DSEG SEGMENT MSG DB 13, 15, 7, 25, 24 M DB ? DSEG ENDS CSEG SEGMENT ASSUME CS: CSEG, DS: DSEG START: MOV AX, DSEG MOV DS, AX MOV CX, 4 MOV AL, MSG MOV SI, OFFSET MSG+1 L1: CMP AL, [SI] JB NEXT MOV AL, [SI] NEXT: LOOP L1 MOV M, AL MOV AX, 4C00H INT 21H CSEG ENDS END START (1)程序说明:这个程序的目的是要在13, 15, 7, 25, 24中找到最小数,并且放到M单元中。

(2)调试说明:运行无问题 (3)错误问题:结果中M单元的内容是错误的,此时M为13,但真实值应为6 解决办法:该程序的循环是一个死循环,无法将每个数都进行比较,因此,需要每次循环时地址+1才能将每个数进行比较,所以需要在 循环上加“INC SI”。 (4)修改后程序及运行结果: DSEG SEGMENT MSG DB 13, 15, 7, 25, 24 M DB ?

程序设计的几个基本概念

1、什么是可视化程序设计? 可视化(Visual)程序设计是一种全新的程序设计方法,它主要是让程序设计人员利用软件本身所提供的各种控件,像搭积木式地构造应用程序的各种界面。 2、可视化程序设计有哪些优点? 可视化程序设计最大的优点是设计人员可以不用编写或只需编写很少的程序代码,就能完成应用程序的设计,这样就能极大地提高设计人员的工作效率。 3、能够进行可视化程序设计的语言有哪些? 能进行可视化程序设计的语言很多,比较常用的有微软的Visual Basic、Visual C++、Visu al C#、中文Visual Foxpro、Borland公司的Delphi等。 4、可视化程序设计中有哪些基本概念? 主要的几个基本概念有表单、组件、属性、事件、方法等。 5、什么是表单(Form)? 表单是指进行程序设计时的窗口,我们主要是通过在表单中放置各种部件(如命令按钮、复选框、单选框、滚动条等)来布置应用程序的运行界面。 6、什么是组件? 所谓组件,就是组成程序运行界面的各种部件,如:命令按钮、复选框、单选框、滚动条等。 7、什么是属性? 属性就是组件的性质。它说明组件在程序运行的过程中是如何显示的、组件的大小是多少、显示在何处、是否可见、是否有效…… 8、属性可以分成哪几类? 属性可分成三类,设计属性:是在进行设计时就可发挥作用的属性;运行属性:这是在程序运行过程中才发挥作用的属性;只读属性:是一种只能查看而不能改变的属性。 9、什么是事件? 事件就是对一个组件的操作。如用鼠标点击一个命令按钮,在这里,点击鼠标就称为一个事件(C lick事件)。 10、什么是方法? 方法就是某个事件发生后要执行的具体操作,类似以前的程序。例如当我们用鼠标单击“退出”命令按钮时,程序就会通过执行一条命令而结束运行,命令的执行过程就叫方法。 C++面向对象程序设计基本原理 使用面向对象程序设计的思想和方法进行系统设计和编程,从根本上解决了从现实世界的问题空间到计算机解空间的直接映射,使所设计的系统能更加准确地模拟现实世界;同时面向对象的系统从程序的结构、运行机制上保证了程序的安全性,灵活性;大大提高了程序代码段的复用性,易维护性和易扩展性。因此,面向对象程序设计已经取代了面向过程程序设计成为当前程序设计(特别是复杂大系统的设计、编程)的主流方法,是软件开发人员的必备素质。面向对象程序设计课程主要阐述面向对象技术程序设计的基本原理和基本技术,使学生深刻理解面向对象技术所带来的观念改革,掌握一种面向对象程序设计语言和面向对象设计的思维方式、规则与基本方法,了解面向对象程序设计技术的发展趋势。 第一~五章面向对象程序设计的理论 基础知识:

01分电路的基本概念和基本定律

电路的基本概念和基本定律 一、是非题 1.在电路的节点处,各支路电流的参考方向不能都设为指向节点,否则将只有流入节点的电流,而没有流出节点的电流。 2.电流强度的大小定义为单位时间内通过单位面积的电量。 3.在电路中,由于所标明的电流参考方向是任意假定的,所以电流可能为正,也可能为负。 4.电路中某两点的电位都很高,则这两点间的电压一定很高。 5.电路中某两点间的电压等于两点的电位差,所以该两点间的电压与参考点有关。 6.若改变电路中的参考点,则电路中各点的电位一般都将改变。 7.某元件的电压u和电流i为非关联参考方向,若用p=ui算得的功率值为 5W,则该元件实际供出5W的功率。 8.若某元件的电流I和电压U采用非关联参考方向,则P=UI为该元件供出的功率。 9.短路元件的电压为零,其电流不一定为零。开路元件的电流为零,其电压不一定为零。 10.根据P=UI,对于额定值220V、40W的灯泡,由于其功率一定,如电源电压越高,则其电流必越小。 11.有两个额定电压相同的电炉,电阻不同。因为P =I2R,所以电阻大的功率大。 12.如果电池被短路,输出的电流将最大,此时电池输出的功率也最大。 13.无论流过电压源的电流多大,电压源的电压总保持常量或给定的时间函数。 14.如果一个电压源的电压U S=0,则它相当于开路。 15.直流电源的内阻为零时,电源电动势就等于电源端电压。 16.某实际直流电源的开路电压为U S,若该电源外接一个电阻器,其电阻值在某范围变化时都满足U R=U S,则在一定的电流条件下,该实际电源的模型为一电压源。

17.与电压源并联的各网络,对电压源的电压并无影响;与电流源串联的各网络,对电流源的电流并无影响。 18.如果一个电流源的电流I S=0,则它相当于开路。 19.电路中任意两点a、b之间的电压u ab,等于从a点沿任意一条路径到b点间所有元件电压的代数和。 20.KCL对于电流的参考方向或实际方向均成立,KVL对于电压的参极性或实际极性也都是成立的。 21.在列写KCL和KVL方程时,对各变量取正号或负号,均按该变量的参考方向确定,而不必考虑它们的实际方向。 22.线性电阻的电压、电流特性曲线的斜率总是正值。 23.实际直流电源的特性越接近电压源时,其内阻越小。实际电源的特性越接近电流源时,其内阻越大。 24.将小灯泡与可变电阻串联后接到直流电压源上,当电阻增大时,灯泡的电压减小,所以灯泡变暗。 答案部分 1.( -)2.(+)3.(+)4.(-)5.(-)6.(+)7.(-) 8.(+)9.(+)10.(-) 11.(-)12.(-)13.(+)14.(-)15.(+)16.(+)17.(+)18.(+)19.(+) 20.(+)21.(+)22.(-)23.(+)

相关文档