纯数字编程
A. 求编程输出如下数字图案的代码
按照你的要求编写的输出数字图案的Java程序如下
public class M{
public static void main(String[] args) {
int i,j,k,index,count=1,N=5;
int arr[][]=new int[N][N];
for(index=1;index<=N;index++){
i=0;
j=index-1;
for(k=1;k<=index;k++){
arr[j][i]=count++;
i++;
j--;
}
}
for(i=0;i<N;i++){
for (j=0;j<N-i;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}
B. 纯数字电路的设计,单片机的设计和可编程逻辑器件,三种的优缺点
纯数字设计指的大多是74系列那样的通用芯片,有点是组建方便,简单系统成本低,是可编程逻辑器件的基础,早期单板机就用这个,现在led光屏也有很多,缺点是复杂应用成本高,设计复杂,功耗大,部分效率较低。
PLD成本高,但是功耗较低,另外较稳定易维护,方便量产。设计开发过程随着技术的进步也越来越简便快捷。
单片机功耗低应用灵活,但是执行并行任务效率低。不过一般的应用对实时性要求不高,所以应用特别特别特别广泛…收发器,收音机,充电器,显示屏,无所不在,而且沾了单片机也能显得高端不少(其实不止是显得,因为软件部分很能显示出设计者的水平)
个人见解,有不全面的楼下补充
C. 软件编程中的8位纯数字颜色代码如何转换
把这个数值除以65536后取整,就是R
把这个数值除以256后取整,再与256求模(即取余数),就是G
把这个数与256求模(即取余数),就是B
比如
12000284/65536 = 183(R)
12000284/256%256 = 28(G)
12000284%256 = 28(B)
也可以把这个数值转换为16进制,然后开头两位就是R,中间两位是G,最后两位是B
比如
12000284 = 0xB71C1C
0xB7 = 183(R)
0x1C = 28(G)
0x1C = 28(B)
D. 何为数字编程
估计你说的是fpga或者是cpld吧
FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有:
1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。 ——2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
3)FPGA内部有丰富的触发器和I/O引脚。
4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。
FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。