전체보기 57

02. Fabric Read&Write Set

목표 ! Fabric 에서 체인코드가 어떤식으로 읽고 쓰는지 ( read&Write set) 알아보기 이 부분을 이해해야 체인코드를 작성하고 체인코드 스트럭처 를 설계 할 수 있다. TPS 가 높은 체인코드를 설계 가능 Fabric이 사용하는 방식은 KVS( Key-Value Store) Level, Couch ( 레벨디비는 속도가 빠르고 카우치디비는 복잡한 쿼리문 작성 가능) 체인코드안에서는 A :100 , B : hello ( 체인코드에서 값을 저장하는 방식) ( key - value ) 다른점 ? : 한 블록 내에서 하나의 키 값을 여러 번 읽어서 바꿔 쓸 수가 없다.( 한 블락에서 한번 작성 ) Read Set , Write Set (https://hyperledger-fabric.readthed..

01.Fabric Structure

목표 ! 아래 사진 이해하기 패브릭과 비트 , 이더를 비교하여 설명 비트 , 이더 ( 퍼블릭 블록체인) 블록 생성자 = 스마트 컨트랙트 처리 노드 개인키 기반 프로그램 하나가 모든 걸 처리함. 비트코인 코어, 이더리움 클라이언트 ( 마이닝, 지갑, 블록체인 저장 ,월드스테이 등,,) 모든역할을 다 함. 패브릭 ( 프라이빗 블록체인) 블록 생성자 != 스마트 컨트랙트 처리 노드 인증서 기반 상호작용, 중간관리자의 역할(CA가 인증서를 발급함.) ...ex) 공인인증서 하나의 키 값 한 블록에서 여러 번 바꿀 수가 없다. (방식이 비트,이더와 다름) 아키텍처 에서 발생하는 큰 차이점 중 하나. (체인코드 로직이 좀 다르다 .) 오더러는 블록생성만, ( 물론 오더러도 블록체인을 보관하긴 함.) 구성요소가 나누..

함수 정리

C 언어에서 함수란, 반복해서 사용되는 일련의 명령어들을 하나로 묶어서 호출할 수 있는 코드 블록이다. 함수를 사용하면 코드의 재사용성이 높아져서 코드의 길이가 줄어들고, 프로그램의 구조도 더 간단해진다. 함수를 사용하는 방법. 함수의 정의: 함수를 사용하기 전에 함수를 먼저 정의해야 한다. 함수를 정의할 때는 함수의 이름, 매개변수, 반환형, 함수의 구현 등을 정의 해야 함. 함수의 이름은 유일해야 하며, 호출할 때 사용됨. 함수의 호출: 함수를 호출할 때는 함수의 이름과 매개변수를 지정 함수를 호출하면 함수의 구현 코드가 실행되며, 함수의 반환값이 있을 경우 이 값을 반환. 함수의 반환값 사용: 함수를 호출한 결과 반환되는 값을 변수에 저장하여 사용할 수 있음. 반환값이 없는 함수의 경우에는 호출만 ..

5.1 ~ 5.2 if 문과 switch ~case 문

5;1 if 문 제어문( 프로그램의 실행 순서를 제어) 선택문 ( if , switch ~ case ) 반복문 (while , for, do~while) 분기문 ( break, continue, goto, return ) 5.2 – if 문 활용과 switch 문~ case 문 Switch case 문 Int rank = 3; Int m; Switch( rank ) { Case 1 : m = 300 ; break; Case 2 : m = 200 ; break; Case 3: m = 100 ; break; Default : m = 50 ; 5;1 if 문 제어문( 프로그램의 실행 순서를 제어) 선택문 ( if , switch ~ case ) 반복문 (while , for, do~while) 분기문 ( br..

4.2 – 비트 연산자와 그 외의 멋진 연산자

4.2 – 비트 연산자와 그 외의 멋진 연산자 형 변환 Int grad = 100 , empl = 90; Double = res ; Res = empl / grad * 100.0 = 정수 계산으로 나눠서 0.9가 0 으로 나옴 = 0 형변환을 해줘야함 Res = (double)empl/ grad *100.0 = empl이 실수로 변경되서 계산 됨 . 복합 대입연산자 Int a =10 ; A = a+1 ; A += 1; ( 복합대입연산자) ( -=, *=, /=, %= ) 대입연산자와 우선순위가 같음 조건 연산자 Int a = 10 , b = 20 ; Int max; Max = (a >b) ? a:b // ( 참 : 거짓 ) (a>b) ? pritnf(“%d”,a) : printf(“%d”,b) ; 비트연..

4.1 산술, 관계, 논리 연산자

4.1 산술, 관계, 논리 연산자 + - * / % ++ -- 나머지(%) 연산자는 정수만 가능 , 실수는 나머지가 없기 떄문에 오류 Int a =10; A = a+1 ; 앞에 붙이면 전위표기, 뒤에 붙이면 후위표기 ++a; , --a ; A = 5 B = ++a * 3 ( 증감이 우선순위가 높아서 먼저 수행) B = 6 *3 ( 18) B = a++ * 3 ( 후위 표기식인 경우 증감 하기 전의 값으로 연산수행) B = 5 * 3 = (15) 변수가 공간으로 쓰일 때 ( i-value) 변수가 값으로 쓰일 때 ( r-value) 관계 연산자 ( 대소관계를 구별 ) >, >=, > 참 참이면 0이 아닌 모든 것(1) Printf(“%d” , a>b) ; 1 출력 (참) Printf(“%d” , a

3.2 데이터 입력

3.2 데이터 입력 Int main(void) Int a; Scanf(“%d”,&a) ( & 주소 연산자 , a 라는 변수의 주소를 구함) Printf(”%d”,a); Char ch ; Scanf(“%d”, &ch); (X) Scanf(“%c”, &ch); (O) Char 은 1 byte 인데 “%d” 으로 선언을 해주면 Int 형으로 4byte 공간에 값을 넣을려고 하기 때문 문제 발생. 데이터 입력을 2개 해야할 때 Int age; int height; Printf(“나이와 키 : “); Printf(“%d %lf”, &age, &height); Char grade; Printf(“학점:”); Scanf(“%c”, &grade); Printf(“%c\n”,grade); Char에 입력할 때 엔터나 스..

3.1 변수

3.1 변수 정수형 변수를 선언하면 4 byte의 메모리공간이 할당이 됨 정수값을 저장하는 자료형 Int 4byte Shot 2byte Long 4byte printf(“%ld”,ln) Long long 8byte printf(“%lld”,ln); Char 1byte; printf(“%c” , ch ) 예약어 Signed int a >> 음수도 저장 가능( singed 생략) Unsigned int ua; >> 양수만 지정 가능 ( 메모리 공간이 넓어짐) Pirntf(“%u”,ua ) ; 큰 값을 넣게되면 2의 보수로 넘어가서 -1 로 찍힘 실수값을 저장하는 자료형 Float 4byte; Double 8byte; Char str [20] ; 캐릭터형의 변수를 20개를 확보하겠다. Char str[20] ..

1.1 - 프로그래밍과 C 언어 ~ 2.2 상수와 데이터 표현 방법

1.1 프로그래밍과 C 언어 저장공간 확보 > 데이터 입력 > 처리 > 출력 ( 순서가 있음 ) 컴퓨터에게 명령 >> 프로그래밍 언어 1972 년 벨 연구소의 데니스 리치, 켐 톤슨 개발 하드웨어 제어, 호환성, 이식성 함수 사용 1.2 컴파일러 사용법 소스코드 작성 >> 컴파일 >> 실행파일 완성 >> 운영체제에서 실행 소스코드 하드디스크에 텍스트파일 형식으로 저장 (ASCII) 형식 ASCII 1Byte(8bit) 로 저장 컴파일 코드화된 문자 >> 명령들의 집합 21. C 프로그램의 기본 형태와 데이터 출력 방법 메인 함수 구조 Int main (void)