The vhdl coding for a 4 bit comparator is as follows:-Its a behavioural type of modelling.....
LIBRARY ieee ;USE ieee.std_logic_1164.all ;USE ieee.std_logic_arith.all ;ENTITY compare ISPORT ( A, B : IN SIGNED(3 DOWNTO 0) ;AeqB, AgtB, AltB : OUT STD_LOGIC ) ;END compare ;ARCHITECTURE Behavior OF compare ISBEGINAeqB <= '1' WHEN A = B ELSE '0' ;AgtB <= '1' WHEN A > B ELSE '0' ;AltB <= '1' WHEN A < B ELSE '0' ;END Behavior ;
Here is the coding of game 'snake' in c language:
#include <graphics.h>#include <stdlib.h>#include <dos.h>#include <conio.h>#include <stdio.h>#include <time.h>check();end();win();int m[500],n[500],con=20,TEMP;clock_t start,stop;void main(void){int gd=DETECT,gm,ch,maxx,maxy,x=13,y=14,p,q,spd=100;int a=0,i=0,j,t,temp;initgraph(&gd,&gm,"..\bgi");setcolor(WHITE);settextstyle(3,0,6);outtextxy(200,2," SNAKE 2 BY RAJESH ");settextstyle(6,0,2);outtextxy(20,80," Use Arrow Keys To Direct The Snake ");outtextxy(20,140," Avoid The Head Of Snake Not To Hit Any Part OfSnake");outtextxy(20,160," Pick The Beats Untill You Win The Game ");outtextxy(20,200," Press 'Esc' Anytime To Exit ");outtextxy(20,220," Press Any Key To Continue ");outtextxy(20,220," DONT FORGET TO GIVE U R VALUABLE OPINION ");ch=getch();if(ch==27) exit(0);cleardevice();maxx=getmaxx();maxy=getmaxy();randomize();p=random(maxx);temp=p%13;p=p-temp;q=random(maxy);temp=q%14;q=q-temp;start=clock();while(1){setcolor(WHITE);setfillstyle(SOLID_FILL,con+5);circle(p,q,5);floodfill(p,q,WHITE);if( kbhit() ){ch=getch(); if(ch==0) ch=getch();if(ch==72&& a!=2) a=1;if(ch==80&& a!=1) a=2;if(ch==75&& a!=4) a=3;if(ch==77&& a!=3) a=4;}else{if(ch==27) break;}if(i<20){m[i]=x;n[i]=y;i++;}if(i>=20){for(j=con;j>=0;j--){m[1+j]=m[j];n[1+j]=n[j];}m[0]=x;n[0]=y;setcolor(WHITE);setfillstyle(SOLID_FILL,con);circle(m[0],n[0],8);floodfill(m[0],n[0],WHITE);setcolor(WHITE);for(j=1;j<con;j++){setfillstyle(SOLID_FILL,con+j%3);circle(m[j],n[j],5);floodfill(m[j],n[j],WHITE);}delay(spd);setcolor(BLACK);setfillstyle(SOLID_FILL,BLACK);circle(m[0],n[0],8);floodfill(m[0],n[0],BLACK);setcolor(BLACK);setfillstyle(SOLID_FILL,BLACK);circle(m[j],n[j],5);floodfill(m[j],n[j],BLACK);}stop=clock();t=(stop-start)/CLK_TCK;printf(" TIME %d sec ",t);printf("SCORE %d",con-5);check();if(x==p&&y==q) { con=con+5; if(spd>=5) spd=spd-5; else spd=5;if(con>490) win();p=random(maxx); temp=p%13; p=p-temp;q=random(maxy); temp=q%14; q=q-temp;}if(a==1) y = y-14; if(y<0) { temp=maxy%14;y=maxy-temp;}if(a==2) y = y+14; if(y>maxy) y=0;if(a==3) x = x-13; if(x<0) { temp=maxx%13;x=maxx-temp;}if(a==4) x = x+13; if(x>maxx) x=0;if(a==0){ y = y+14 ; x=x+13; }}}check(){int a;for(a=1;a<con;a++)if(m[0]==m[a] && n[0]==n[a]) end();else continue;}end(){int j,i;setcolor(WHITE);for(i=0;i<5;i++){delay(500);cleardevice();delay(500);for(j=0;j<=con;j++){setfillstyle(SOLID_FILL,RED);circle(m[j],n[j],5);floodfill(m[j],n[j],WHITE);}}settextstyle(3,0,4);outtextxy(150,150," GAME OVER ");getch();getch();exit(0);}win(){int j,i;setcolor(WHITE);for(i=0;i<5;i++){for(j=0;j<=con;j++){setfillstyle(SOLID_FILL,con);circle(m[j],n[j],5);floodfill(m[j],n[j],WHITE);}delay(500);cleardevice();delay(500);}settextstyle(3,0,4);outtextxy(210,320," YOU WIN ");getch();exit(0);}
Here is the simple c program of binary search....
#include<stdio.h>
int arr[10];
int t,b,m,s;
int bsearch(int item)
{ int flag=0;
t=0;
b=s-1;
while(!flag && t<=b)
{
m=(t+b)/2;
if(arr[m]==item)
{
flag=1;
break;
}
if(arr[m]>item)
b=m-1;
else
t=m+1;
}
return(flag);
}
void main()
{
int i,r,itm;
clrscr();
s=0;
for(i=0;i<=9;i++)
{
arr[i]=i+1;
s++;
}
for(i=0;i<=9;i++)
printf("\n%d",arr[i]);
printf("\nEnter item to search: ");
scanf("%d",&itm);
r=bsearch(itm);
if(r==1)
printf("\nItem found");
else
printf("\nItem not found");
getch();
}