이산치6보고서

314 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
314
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

이산치6보고서

  1. 1. A2 Project 보고서 조장 04이성욱 조원 11성주희 09김창헌 09김성현
  2. 2. 날짜 토의 내용 *조원별 업무 분담. 역할 분담 팀원 자료조사 및 이해 09 김창헌 09김성현 코딩 04 이성욱 보고서 11 성주희 *이번 프로젝트를 할 때 전체적인 일정을 정함6/4(월) 월 화 수 목 금 4일 5일 6일 7일 8일 - 조원별 업무 분담 및 계획 작성 - 자료조사 및 이해 - 프로젝트 문제파악 - 알고리즘에 대해 - 프로그램 검토 - 프로젝트에 필요한 - 프로그램 및 보고서 작성 토의하고 이해 - 최종보고서 완성 학습내용 토의 - 프로젝트 진행방향 - 문제점 토의 토의 *프로젝트에 필요한 학습내용 토의. *프로젝트 진행방향 토의 *자료를 조사한 것을 공유하고 꼼꼼히 공부를 하고 토의함. 용어 정의 - 부울 대수에서의 연산 식 boolean expression - 단독의 변수나 정수 또는 그것들의 연산자로 조합시킨 것과 함수의 인용으로 표 시한 식 - 함수의 모든 minterms의 합으로 이루어진 식 disjunction of minterms - n개의 variable를 가지는 함수는 2^n개의minterm을 가진다. - 이것은 truth table에서 F= 1을 가지는 것을 골라내면 된다. - 임의의 불 함수를 나타내기 위해 필요한 최소한의 연산자 집합. - 논리곱(AND)과 부정(NOT), 논리합(OR)과 NOT, 부정 논리곱(NAND) 또는 부 complete set of operations6/5(화) 정 논리합(NOR)만으로 임의의 불 함수를 나타낼 수 있으므로 (AND, NOT), (OR, NOT), (NAND), (NOR)는 완전 집합이다. - 부울 함수를 표준형으로 표현할 수 있는 모든 가능한 방법들 중의 한가지로 보 Karnaugh maps 통 3변수 이상 6변수 이하의 부울 함수에서 사용한다. - 컴퓨터 과학에서의 2진의 형태로 데이터를 기록하는 장치, 또는 그러한 코드화 binary device 된 데이터를 판독하는 장치. - 디지털 회로의 기본적인 요소 부문. 대부분 2개의 입력과 하나의 출력으로 되어 - 있으며, logic gates 기본적인 논리 게이트에는 논리곱(AND), 논리합(OR), 배타적 논리합(XOR), NOT, 부정 논리곱(NAND), 부정 논리합(NOR), XNOR 등 7가지가 있다.6/6(수) *프로그램 작성 및 보고서 작성.6/7(목) *프로그램 검토 및 최종보고서 완성6/8(금) - 프로그램 참조.
  3. 3. 최종 프로그램#include<stdio.h>int halfadderu( int , int );int halfadderv( int , int );int main(void){ int a,b,c,d; int u1,v1,u2,v2,u3,v3; printf("입력 a: "); scanf("%d" , &a); printf("입력 b: "); scanf("%d" , &b); printf("입력 c: "); scanf("%d" , &c); printf("입력 d: "); scanf("%d" , &d); if((a==0 || a==1) && (b==0 || b==1) && (c==0 || c==1) && (d==0 || d==1)){ u1=halfadderu(a,c); v1=halfadderv(a,c); u2=halfadderu(b,d); v2=halfadderv(b,d); u3=halfadderu(v1,u2); v3=halfadderv(v1,u2); u1=u1+u3; if(v1==2) v1=1; printf("e: %d, f: %d, g: %dn" , u1 , v3 , v2); } else printf("n입력이 잘못되었습니다.n");}int halfadderu( int x , int y){ return x*y;}int halfadderv( int x , int y){ int tempx,tempy,temp; if(x == 1) tempx = 0; else tempx=1; if(y == 1) tempy = 0; else tempy=1; temp=(tempx*y)+(x*tempy); if(temp==2)temp =1; return temp;} 실행 결과

×