A. 如何快速读懂别人的嵌入式程序代码
参照以往结构,了解对方产品功能,双向分析,比较快,另外理清对方程序结构之后就能够读懂意图。
B. 怎么判断是不是嵌入式程序
嵌入式程序一般是指在控制器上跑的程序,往往不能直接编译没有开发环境,只能在电脑上开发之后放在嵌入式设备上运行。配册
所以是不是嵌入式程颤绝序可以这么简单的判断设备是否带开发环境比如以前的手机就不能直接用手机开发程序或者是电饭煲电磁炉等不能自己开发自己这里面的程序算培洞宏是嵌入式程序。
C. 关于ARM嵌入式RTC部分程序的疑问1
这个应该是跟你要通讯的模块相关。
0xFF是起始字符这个不用说,然后是枣孝0x81,也应该是对模块的控制命令。
接着uiX、uiChar是传递凳游稿过来的参数,也就是调用PCDDispChar函数时需要写入模块的数据。最磨纤后0x00应该是通知模块数据写入完毕或者是停止字符。
以上全属个人意见,回答错了别骂就是。
D. 交互式SQL与嵌入式SQL有什么不同
1、语言不同
交互式SQL是指在终端交互方式下使用的SQL语言称为交互式SQL;嵌入式SQL是悄拿一种将SQL语句直接写入C语言,COBOL,FORTRAN, Ada等编程语言的源代码中的方法。
2、使用不同
交互式SQL是在终端交互方式下使用;嵌入式SQL是嵌入在高级语言的程序中使用。
(4)嵌入式程序怎么查询扩展阅读:
提供对于嵌入式SQL的支持,需要数据库厂商除了提供DBMS之外,还必须提供一些工具。为了实现对于嵌入式SQL的支持,技术上必须解决以下4个问题:
1、宿主语言的编译器不可能识别和接受SQL文迹运和,需要解决如何将SQL的宿主语言源代码编译成可执行码;
2、宿主语言的应用程序如何与DBMS之间传递数据和消息;
3、如何把对数据的查询结果逐次赋值给宿主语言程序中的变量以供其处理;
4、数据库的数据类型与宿主语言的数据类型有时不完全对应或等价,如何解决必要的数据类型转换问题。
嵌入式SQL源码的处理流程 为了解决上述这些问题,数据库厂商需要提供一个嵌入式SQL的预编译器,把包含有嵌入式SQL文的宿主语言源码转换成纯宿主语言的代码。
这样一来,源码即可使用宿主语言对应的编译器进行编译。通常情况下,经过嵌入式SQL的预编译之后,原有的嵌入式姿盯SQL会被转换成一系列函数调用。因此,数据库厂商还需要提供一系列函数库,以确保链接器能够把代码中的函数调用与对应的实现链接起来。
E. 嵌入式程序如何判断其是什么类型程序(驱动,应用,系统)
1.驱动是与硬件通信的程序,.h文件里面一般会定义引脚之类的,很好认
2.应用是与用户交互的程序,一般有输入输出(包括界面)等人机交互,少部分嵌入式应用程序由于硬件成本限制,可能会没有界面或界面简陋原始,那么判断的依据就是完成用户所需的某项特定功液册孝能的程序
3.系统介于二者之间,是控制应闹稿用与驱动的姿败运行,管理系统资源的一系列程序的集合
F. 如何区分嵌入式软件和非嵌入式软件
嵌入式软件就是嵌入在硬件中的操作系统和开发工具软件,它在产业中的关联关系体现为:芯片设计制造→嵌入式系统软件→嵌入式电子设备开发、制造。
嵌入式系统是指用于执行独立功能的专用计算机系统。它由包括微处理器、定时器、微控制器、存储器、传感器等一系列微电子芯片与器件,和嵌入在存储器中的微册毕扰型操作系统、控制应用软件组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性,软件与硬件可剪裁,以此满足系统对功能、成本、体积和功耗等要求。
最简单的嵌入式系统仅有执行单一功能的控制能力,比如说单片机的应用,在唯一的ROM 中仅有实现单一功能控制程序,无微型操作系统。复杂的嵌入式系统,例如个人数数渗字助理(PDA)、手持电脑(HPC)等,具有与PC几乎一样的功能。实质上与PC的区别仅仅是将微型操作系统与应用软件嵌入在ROM、RAM 和/或FLASH存储器中,而不是存贮于磁盘等载体中。很多复杂的嵌入式系统又是由若干个小型州旦嵌入式系统组成的。
非嵌入式软件和嵌入式软件正好相反,其是指可以跨平台甚至跨系统使用的软件系统。
G. 游戏软件怎么查看源代码
源代码是看不成的,因为游戏软件打包好做成app的话,是没法看源码的,虽然存在一些特殊情况下,我们可以推测出exe程序是用什么程序写的。但是多数情况下,我们是无法只根据一个exe程序就判断出来的。
根据exe程序我们是无法直接得到程序的源码的。虽然也有一些用于逆向工程的办法,但那不可能把已经是exe的程序反回到它原始的源码情况。而且这些工具都很难用。你可以用“反编译”搜到很多工具,但是说实话,即便是这方面的专家,要看懂反编译以后的程序也不是一件轻松的事情。
H. Visual C++ SQL嵌入式编程
以前我写的时候遇到的问题搜到的资料 你看下有帮助不
MFC 连接SQL SERVER(ODBC方式)
1、建立数据库
这一步比较简单,直接打开SQL Server Management Studio,根据自己需要设计数据库中的表,及其之间的依赖关系等等!要想设计一个完美颂谈链的数据库,就必须了解数据库的基本知识。这里不再具体说了。这里我们假设我们的数据库名字为Test01
2、配置数据源
数据库设计建立完成后,它只是单独的几张表,我们并不能在程序中去访问它,因为程序并不知道数据库在哪里。因此,就要在应用程序跟数据库之间建立连接。
配置数据源说通俗了就是为数据库创建一个对外的窗口,应用程序通过这个窗口来访问数据库中的数据。具体配置步骤为:
1) 打开 控制面板--〉管理工具--〉数据源,在用户DSN面板选择 “添加”
2) 在数据源驱动程序中选择 “SQL Server” --〉完成,即打开 “创建到SQL Server 的新数据源”
3) 在“数据源名称”中填入名称,我们填 TestSQL01,然后选择 服务器,在其中选择要连接到的SQL Server服务器。(如果你电脑的SQL Server服务打开的话,就会有自己的主机名。或者选择网络上的某个SQL Server。
4) 点击 下一步 配置认证信息
5) 配置完后点击 下一步, 选中 “更改默认的数据库为”复选框,在下拉中选择自己刚才建立的要连接的数据库。 (这一步很重要,一般一个Server上会有多个数据库,如果不更改数据源的默认数据库,你 建立的数据源将连接到默认的数据库,这样就会造成程序中执行SQL语句时“对象名无效”的错误,即找不到你指定的数据表等)
6) 选择完数据库后直接 下一步--〉完成 就完成了数据源的配置。接下来会出现配置数据源的基本侍携信息,可以通过 “测试数据源”来测试数据源是否配置成功。
3、 数据库的连接
建立完数据库,又配置好了数据源,接下来就可以在程序中通过数据源来访问数据库了。
1) 首先要在程序中引入MFC ODBC数据库的定义文件 #include <afxdb.h>
2) 定义CDataBase数据库对象, CDataBase m_db;
3) 利用CDataBase类的OpenEx函数建立和数据库的连接;
m_db.OpenEx(_T("DSN=TestSQL01;"),CDatabase::noOdbcDialog);
/*这里野孙的TestSQL01 即为步骤2中建立的数据源,然后根据OpenEx函数格式填入参数,主要是用户名、密码之类,这里没有设置,所以就没有*/
具体连接还要捕捉OpenEx可能抛出的异常:
TRY
{
m_db.OpenEx(_T("DSN=TestSQL01;"),CDatabase::noOdbcDialog);
rs.m_pDatabase = &m_db;
}
CATCH(CDBException,ex)
{
AfxMessageBox(ex->m_strError);
AfxMessageBox(ex->m_strStateNativeOrigin);
}
AND_CATCH(CMemoryException,pEx)
{
pEx->ReportError();
AfxMessageBox(_T("memory exception"));
}
AND_CATCH(CException,e)
{
TCHAR szError[100];
e->GetErrorMessage(szError,100);
AfxMessageBox(szError);
}
END_CATCH
4、 数据库操作
在完成了上面的步骤后,就可以使用SQL语句对数据库进行操作了。基本的操作有 查询、添加、修改、删除等。这里主要说一下查询,其他操作都与添加步骤类似。
1)查询
查询的基本步骤可以看下面的这段代码:
CString sql = _T("SELECT Password FROM UserInfo WHERE (UserID = 123“) //要执行的SQL语句
CString psd; //存放查询结果
TRY
{
rs.Open(AFX_DB_USE_DEFAULT_TYPE,sql); //打开查询记录
rs.GetFieldValue(_T("Password"),psd); //得到数据
}
CATCH(CDBException,ex)
{
AfxMessageBox(ex->m_strError);
AfxMessageBox(ex->m_strStateNativeOrigin);
}
AND_CATCH(CMemoryException,pEx)
{
pEx->ReportError();
AfxMessageBox(_T("memory exception"));
}
END_CATCH
2)插入
相对于查询,插入、删除、更改操作就简单得多了。 CString sql = _T("USE Test01 INSERT UserInfo(UserID,UserName) VALUES(" 123, 'Bob');
try
...{
m_db.ExecuteSQL(sql);
}
..............