
C\C++语言\汇编
gc_2299
不以物喜,不以己悲
展开
-
C语言学习随记
在看网上的文章《Learn C The Hard Way》,发现有些是我原来没有见过,或者搞不明白的,于是把这些列出来供以后随时查看。1)int (*pFuncPointer)(int a, int b),这句代码是指定义一个函数指针变量,变量名为pFuncPointer,可以直接赋值 typedef int(*PFuncPointer)(int a, int b) 这句代码是指定义一类函原创 2017-11-12 19:56:04 · 238 阅读 · 0 评论 -
用链表计算两个多项式的和
看严蔚敏的《数据结构》的书,第二章讲链表的时候介绍可以用链表来保存多项式的每一项(系数和指数),然后计算两个多项式的加减乘除,于是用C语言实现了其中的多项式加法的操作,这里把程序介绍一下。 首先是定义数据结构保存多项式的一项。 typedef struct _PolyItem { float Coef; //系数原创 2017-11-12 19:57:24 · 1533 阅读 · 0 评论 -
用链表实现栈和队列对简单数学表达式求值
在严蔚敏的《数据结构》第三章中介绍了栈和队列,这两种结构是线性表的特殊情况,都可以用单向链表来实现。在栈的应用举例中,书中提到可以用栈来实现对数学表达式的求值。于是就实现一个仅包含数字和有限数学符号(+、-、*、/、(、))的数学表达式求值程序。 程序的实现思路如下: 1、用户输入数学表达式; 2、从左至右扫描表达式,识别数字和数学符号,将识别出的内容保存到队列中 3、对队列中的内容进行分析,计算原创 2017-11-12 19:57:27 · 1047 阅读 · 0 评论 -
数学表达式求值(第二版)
在第一版的数学表达式求值程序中,仅实现了对整数的基本数学操作,包括+、-、*、/、(和)。主要的实现方式是利用队列、栈和优先级关系表来进行数学表达式的计算。第二版主要是想加一些常用的数学函数进去,以便在数学表达式中可以使用函数。 实现的方式是新加了一种类型,也就是function类型,现在总共有操作符、操作数和函数三种类型。对数学表达式进行解析时,token中除了保存数字之外,还可以保存函数名称,原创 2017-11-12 19:57:30 · 1126 阅读 · 0 评论 -
检测USB设备插入和拔出
由于工作需要,前段时间一直在找关于在C#中如何检测USB设备的资料,其实C#中使用的函数也是引用的操作系统提供的API函数,还不如在C++中写方便,于是自己简单的写了一个检测USB设备插入和拔出的程序。 程序写完之后,将USB光驱、移动硬盘和优盘插入和拔出都是可以检测到的,就是有些内存卡插入的时候检测不到,于是又接着找资料,发现检测读卡器需要另外的方法。在本文中将分为两部分来解释这些是怎么实现的。原创 2017-11-12 19:57:33 · 6732 阅读 · 4 评论 -
王爽《汇编语言》第八章实验7
最近一直在看王爽的《汇编语言》,想把汇编语言好好学学,这个是我自己写的第八章实验七的程序实验七的具体要求如下:下面是我的程序:assume cs:codeseg,ds:dataseg,ss:tabledataseg segment db '1975','1976','1977','1978','1979','1980','1981','1982','1983' db '原创 2017-11-12 19:57:36 · 940 阅读 · 0 评论 -
王爽《汇编语言》第九章实验9
这个实验的内容不是太麻烦,双层的循环代码前几章有示例代码,实验9内容如下:我的代码如下:assume cs:codesg,ds:datasgdatasg segment dw 0 ; 保存外层的循环次数 db 2h ; 绿色字 db 24h ; 绿底红字 db 80h ; 白底蓝字 db 0C2h ;红底绿字原创 2017-11-12 19:57:39 · 1297 阅读 · 1 评论 -
王爽《汇编语言》第十四章实验14
这个实验比较简单,书中给出的例子是直接把CMOS中读出的值复制到显存中,不过我没有这么做,我是将从CMOS中读出的数据放到数据段中,然后调用dos的中断函数直接显示字符串,下面是代码。assume cs:codedata segment db 9,8,7,4,2,0 ;存放顺序读取的CMOS端口 db '00/00/00 00:00:00','$'原创 2017-11-12 19:57:41 · 1317 阅读 · 0 评论