当前位置: 首页 > article >正文

CC面试准备

半导体基础

半导体是介于导体和绝缘体之间的一种介质,在不同条件下表现出不同的导电性或者不导电特性,

电子半导体器件材料大部分为硅,锗等元素

本征半导体:完全不含杂质的纯净半导体,因为不含杂质,其中载流子仅仅只靠本征激发,导电性能很差。与之相对的是非本征半导体,参杂了不同分为N型半导体和P型半导体,由于两种半导体制作在同一片硅片上,且N型多为自由电子,P型多为空穴,由于扩散作用,中间会形成电场空间,也就是PN结:具有单向导电性,电流只能正极进去,负极出来,正是由于二极管内部独特的PN结。

扩散运动和漂移运动

P型半导体和N型半导体结合之后,P区空穴载流子和N区自由电子在他们交界处就形成了自由电子和空穴的浓度差。

由于P区的空穴浓度比N区高,空穴就往N区扩散,而N区的自由电子浓度比P区高,自由电子往P区扩散,P区和N区交界面附近,形成了一个很薄的空间电荷区,在这个区域内,多子已扩散到对方并消耗。

由于P区N区的杂质离子,一个带负电荷,一个带正电荷,在空间电荷区形成内电场,扩散运动的进行使空间电荷区变宽,内电场也变强了。

这个内电场一方面阻止了扩散运动的进行,扩散就不容易进行下去;另一方面使空穴(少子)从N区往P区漂移,自由电子从P区往N区漂移,这个漂移可不是汽车漂移,是受N区高电势,P区低电势的内电场影响产生漂移,叫做少子漂移。

慢慢的空间电荷区就稳定了。总结来说多子运动叫做扩散运动,少子运动就是漂移运动,当两种运动达到动态平衡就产生了PN结。在PN结加上相应的电级引线和管壳,就构成了半导体二极管。由P区引出的电极成为了正极,由N区引出的电极成为了负极。

理解:P区多子为空穴(带正电)N区多子为电子(带负电),由于扩散作用,空穴和电子分别操作N和P区运动,在P,N区交界处本身会形成一个内电场,由于扩散作用影响,内电场强度也变强了。之后P区边缘是电子,N区边缘是空穴,这个时候又会有漂移运动,也就是不同区的少子会受到电场力的作用会朝对方区域边缘移动。叫少子飘逸

面试问题:

二极管

三极管

CMOS

同步异步

竞争冒险现象

高通低通滤波器

经纬面试准备:

1.软件测试流程:

->需求分析:测试人员参与需求分析,理解系统的功能和非功能性要求。提前发现潜在问题,制定合理测试计划

->测试计划制定:根据需求制定测试计划,确定测试范围、资源、时间、目标等

->测试用例设计:测试人员根据需求编写详细的测试用例,覆盖不同场景。

执行测试:通过手动或自动化测试执行测试用例,捕获和记录软件在不同场景下的行为

缺陷管理:测试过程中发现的缺陷要记录。修复后进行回归测试确保修改没有引入新的问题

测试报告:总结测试结果,生成详细的测试报告

验收测试与发布:在所有缺陷修复之后并且回归测试之后,进行最终的验收测试。确定系统功能符合要求之后进行发布;

2.需求分析阶段测试介入:

需求澄清:需求分析阶段的介入有助于厘清需求中不明确和矛盾的地方,提早发现问题,防止开发阶段的返工;

测试计划的制订:测试计划的指定需要参考需求,才能合理分配时间和资源

测试环境搭建:测试环境要尽可能与生产环境一致,确保测试结果的有效性;

需求分析阶段的介入有助于测试用例的思考,确保所有功能都能被相应的测试覆盖

3.黑盒白盒测试

白盒测试:白盒测试关注的是软件内部的实现,也就是深入到了代码结构层面,测试会通过覆盖代码的每一条路径和分支确保逻辑正确;

常见方法:路径覆盖,分支覆盖,语句覆盖

特点:主要用于开发人员,测试代码逻辑是否正确

黑盒测试:不关注软件的内部实现,而是关注软件功能,测试人员根据需求文档编写测试用例,检查输入输出是否符合预期

常用方法:等价类划分,边界值测试,状态转换测试,因果图

特点:适用于功能测试,用户通过测试功能和性能来验证系统是否符合要求

4.设计测试用例方法

1.等价类划分:将输入数据划分若干类,每一类中的所有数据都被认为是等效的,测试时需要其中一项就可以代表与一类,尽量减少测试用例数量;同时尽可能覆盖多的功能

2.边界值分析:边界值是最容易出错的地方,因此应该关注输入变量的边界情况

3.因果图分析:通过因果图描述输入条件和输出条件的关系,从中提取测试用例

4.状态迁移测试:

你了解到的测试方法

  1. 功能测试

    • 目标是验证软件的功能是否符合需求文档的规定,不关注内部实现。主要通过黑盒测试方法进行。
  2. 性能测试

    • 负载测试:测试系统在高负载下的表现,确保能在预期的负载范围内正常工作。
    • 压力测试:超出正常负载范围,测试系统的崩溃点。
    • 容量测试:测试系统在增加用户或数据量时的表现。
  3. 回归测试

    • 主要目的是在修改或增加功能后,确保新代码没有引入新的问题,旧功能依然正常。
  4. 冒烟测试(Smoke Testing):

    • 在每次构建完成后,进行快速测试,验证系统的基本功能是否正常运行。确保软件版本足够稳定,适合进一步深入测试。
  5. 白盒测试

    • 测试人员需要了解代码的内部结构,测试代码的逻辑是否正确。常用的白盒测试方法包括语句覆盖、分支覆盖、路径覆盖。
  6. 黑盒测试

    • 测试人员不需要了解代码内部结构,直接根据功能需求文档编写测试用例。常用的黑盒测试方法包括等价类划分、边界值分析、决策表测试等。
  7. 单元测试

    • 针对单个模块或函数的测试,验证其功能是否正确。通常由开发人员编写。
  8. 集成测试

    • 在多个模块组合后进行测试,确保模块之间接口和交互正常。
  9. 系统测试

    • 完整系统的测试,验证整个软件系统是否符合用户需求和设计目标。
  10. 验收测试

    • 在系统交付给用户前,进行最终的验证,确保软件能满足用户的实际需求。

2.QNR面经

字符串里找出含子字符元素的最小字串

sql添加一列:alter table add cloumn name


http://www.kler.cn/a/327582.html

相关文章:

  • 微信小程序-prettier 格式化
  • Springboot基于GIS的旅游信息管理系统
  • 【Android、IOS、Flutter、鸿蒙、ReactNative 】自定义View
  • AWTK VSCode 实时预览插件端口冲突的解决办法
  • Webpack 1.13.2 执行 shell 命令解决 打印时没有背景色和文字颜色的问题
  • 4.2 Android NDK 基础概念
  • 如何从huggingface下载
  • C++杂项
  • 裸金属服务器与虚拟机、物理机区别
  • 基于SpringBoot+Vue+MySQL的美食信息推荐系统
  • 大联大友尚集团推出基于炬芯科技产品的蓝牙音箱方案
  • INTO:Web3世界的“价值引力场”
  • asp.net mvc 常用特性
  • psutil库的使用说明
  • 【线程】线程池
  • 通过ChatGPT 提示词设定60种不同的写作风格
  • LeetCode讲解篇之53. 最大子数组和
  • 【前端安全】js逆向之微信公众号登录密码
  • 使用kaggle命令下载数据集和模型
  • MAGICORE:基于多代理迭代的粗到细精炼框架,提升大语言模型推理质量
  • 普通二叉搜索树的模拟实现【C++】
  • 【Ansys Fluent】计算数据导入tecplot傅里叶分析
  • 数据订阅与消费中间件Canal 服务搭建(docker)
  • 设计模式-策略模式-200
  • python全栈学习记录(二十)类的属性传递与绑定方法
  • Leetcode 3303. Find the Occurrence of First Almost Equal Substring