分类目录归档:未分类

软件工程中软件的定义?

答案:

软件由是程序、数据以及开发、使用和维护程序需要的所有文档的完整集合。

解释:

1983年IEEE为软件下的定义是:计算机程序、方法、规则、相关的文档资料以及在计算机上运行程序时所必需的数据。其中的方法和规则通常是在文档中说明并在程序中实现的。特别是当软件成为商品时,相关的文档资料是必不可少的。没有相关文档,仅有程序是不能称为软件产品的。

软件工程的出现主要是由于?

答案:软件危机的出现

扩展:

软件危机是指计算机软件开发和维护过程中所出现的一系列严重问题。

软件危机出现的原因,是落后的软件生产方式无法满足迅速增长的计算机软件需求。

通俗来说,就是软件设计没有规范,导致代码难以开发、维护,另外还表现为开发成本高、产品质量低。

汇编dos中断之键盘输入?

汇编使用dos中断键盘输入数据,有2个功能号

  • mov ah, 01h ==》输入一个字符,并存储ASCII在al中
  • mov ah, 0ah ==》输入一个字符串,并存储ASCII在ds: dx内存地址中

输入一个字符代码调试

Code segment

	Assume cs:code

 Start: 

     Mov ah,01h

     Int 21h

     Mov ah,4ch

     Int 21h

Code ends

   End start

编译上面的代码,使用debug时,在将执行int 21时使用p命令取代t命令,即可输入,输入一个数如3,那么al的值将会变为33(3的16进制的ASCII就是33)

输入字符串代码调试

Code segment

	Assume cs:code

 Start: 

     Mov ah,0ah

     Int 21h

     Mov ah,4ch

     Int 21h

Code ends

   End start

使用debug调试上述程序,在执行到int 21时输入p命令

假设输入的是abcde这5个数,输入完毕后查看ds段,第3位开始是61,62,63,64,65(这是16进制的abcde的ASCII对应编码),那么为什么不是从0开始?

在输入字符串时,会在第一个字中存放输入的长度,观察第2位的值确实是05,可重复调试查看结果。

可以明确,输入的值存储的ds寄存器指定的段地址,那么偏移地址呢?通过调试发现是dx,可以通过指定dx偏移地址,比如mov dx, 3