Article Category

분류 전체보기 (303)
영어 (9)
관심 (11)
프로젝트 (1)
내 폴더 (183)
Ver 1.0 (94)
Windows API (0)
리눅스 (17)
TCP/IP (0)
디지털 공학 (16)
임베디드 (36)
역 어셈블링 (7)
C/C++ (18)
수면과 과학 (0)

 

'Ver 1.0/디지털 공학'에 해당되는 글 16건

  1. 2010.02.14 ATX 파워서플라이(PSU)의 커넥터 핀아웃을 정리해본다.
  2. 2007.01.02 Computer Network Proraming
  3. 2006.11.28 Sigma_Intelligence_신입생_교육_자료
  4. 2006.11.28 도전 프로그래밍 풀다 만 것
  5. 2006.11.16 재귀 함수 설명
  6. 2006.11.09 network protocol analyzer
  7. 2006.11.03 도전 프로그래밍 8문제 제출
  8. 2006.10.27 디지털 시계
  9. 2006.10.21 3계층 구구단 구현
  10. 2006.10.21 알파벳으로 계층 출력하기.

ATX 파워서플라이(PSU)의 커넥터 핀아웃을 정리해본다.


ATX 파워서플라이(PSU)의 커넥터 핀아웃을 정리해본다.

 

먼저

 

 

 

PSU의 케이블을 바라봤을 때의 핀아웃

 

마더보드의 커넥터가 아님에 주의 하자. 실제 케이블과 비교해본다.

 

좌(24핀 커넥터), 우(20핀 커넥터)

 

한편, 메인보드의 경우 대칭되어 커넥터가 배치되어 있으므로 예컨대 20핀의 경우 아래와 같이 배치되어 있게 된다.

 

좌(메인보드측), 우(케이블측)

 

 

위와 같은 방법으로 24핀과 4핀 커넥터의 경우 메인보드측의 커넥터 핀아웃을 정리하면 다음과 같다.

 

 http://panda.textcube.com/4

Computer Network Proraming

- Computer Network Proraming -

이 강의의 목적은 학생들이 프로그래밍 언어나 통신 프로토콜의 각 세부 사항을 모르는 상태에서도 "어떻게 네트웍 프로그래밍이 작성되는지"를 빠른 시간내에 이해하고 응용 능력을 갖출 수 있도록 하는데 있다. 이를 위하여 이 책에서는 네트웍 프로그램 작성의 기본 원리를 충실히 설명하고 각 장마다 대표적인 예제 프로그램을 소개하고 있다. 한편 이 책의 내용을 이해하기 위하여는 c 언어의 기초적인 지식을 필요로 한다.

이 강의에서 다루는 주요 내용은 다음과 같다.

1. 네트웍 프로그래밍의 이해
2. UNIX BSD 소켓 시스템
3. 클라이언트-서버 토크 프로그램
4. UNIX 소켓 응용 프로그래밍
5. 윈도우 소켓(Winsock) 프로그래밍
출처 : http://jkkang.net

Sigma_Intelligence_신입생_교육_자료







배열, 포인터 이후 머리아픈 내용들에 관해서는 빠져 있음.
말그대로 신입생용
















도전 프로그래밍 풀다 만 것


자동으로 과제로 변환, 포인터 개념을 다 애해 했다고 생각 했는데,
역시나 실제 구현과정으로 들어가니 조금 복잡하다.

재귀 함수 설명

int factorial(int n)

     {

        if (n<=1)

          return 1;

        else

          return (n*factorial(n-1));

      }

void main(){

int n,result;

scanf(%d",&n);

result=factorial(n);

printf("%d\n",result);

}

소스 간략하게만 썼습니다. 우선 저렇게만 해도 돌아는 갈껍니다. result에 factorial값

계산되고요. 이때 탈출 조건은 n이 1이 되었을 때입니다. return 1; 이부분입니다. 재귀라는것은 어떤 함수가 자신을 다시 호출하는 것을 말합니다. 만약 n에 5를 넣으면

factorial(5)가 수행됩니다. 그러면 n이 1보다 크기때문에 5*factorial(4)가 리턴됩니다.

우선 리턴이라는것은 함수 선언부에 보면 int factorial이라고 되있습니다.

리턴형이 int라는 것이죠. 제가 쓴구분에 main의 형태는 void라고 선언했습니다. void는 리턴값이 없는것이죠. 결국 리턴형이 int라는것은 그함수가 종료되면 결과값으로 int형의 자료가 반환되고 끝나는걸 의미합니다. 그러면 5*factorial(4)은 숫자라는 의미입니다. 저 부분이 다시 실행되면 5*4*factorial(3)을 부르고 2번더 수행하면 5*4*3*2*factorial(1)이 됩니다. factorial(1)이불리면 리턴 1이 되고 끝나므로 5*4*3*2*1이 리턴되고 종료됩니다.

정리하면 리턴은 그함수를 종료하면서 어떠한 값을 반환하라는 의미입니다. 제가 메인에 result=factorial(n)이라고 써놨는데 그럼 factorial(n)함수는 종료되면서 결과값 int형을 result변수에 반환하고 종료되는 겁니다.

책에 예제하나 없다면 책이 별로인거 같네요 C언어 처음배우시는 거면 A Book on C책을 추천해 드립니다.

network protocol analyzer




프로토콜 분석기 : http://www.ethereal.com/

윤교수의 마이크로 프로세서 월드 : http://control.cntc.ac.kr/cpu/frame3.htm












도전 프로그래밍 8문제 제출

의외로 힘들었다.
4번 8번 개인적으로 난코스;;
8번은 정말 너무너무 꼬아서 생각한 나머지 너무 복잡해 버려서
책을 봤더니 단 2줄로 가능;; 아.. 한심하다.

디지털 시계

3계층 구구단 구현

#include <stdio.h>
int main(void)
{
int val0, val1, val2, tmp=0;

for(val2=1;val2<=(10/3);val2++)
{
 for(val1=1; val1<10; val1++)
 {
  for(val0=2+tmp; (val0<=4+tmp); val0++)
  {
   if(val0<10)printf("%d * %d = %d ",val0,val1,val0*val1);
  }
 printf("\n");
 }
printf("\n\n\n");
tmp+=3;
}
 return 0;
}


2x1=2부터 하나씩 모두 출력


출력화면

2 * 1 = 2       3 * 1 = 3       4 * 1 = 4
2 * 2 = 4       3 * 2 = 6       4 * 2 = 8
2 * 3 = 6       3 * 3 = 9       4 * 3 = 12
2 * 4 = 8       3 * 4 = 12      4 * 4 = 16
2 * 5 = 10      3 * 5 = 15      4 * 5 = 20
2 * 6 = 12      3 * 6 = 18      4 * 6 = 24
2 * 7 = 14      3 * 7 = 21      4 * 7 = 28
2 * 8 = 16      3 * 8 = 24      4 * 8 = 32
2 * 9 = 18      3 * 9 = 27      4 * 9 = 36


5 * 1 = 5       6 * 1 = 6       7 * 1 = 7
5 * 2 = 10      6 * 2 = 12      7 * 2 = 14
5 * 3 = 15      6 * 3 = 18      7 * 3 = 21
5 * 4 = 20      6 * 4 = 24      7 * 4 = 28
5 * 5 = 25      6 * 5 = 30      7 * 5 = 35
5 * 6 = 30      6 * 6 = 36      7 * 6 = 42
5 * 7 = 35      6 * 7 = 42      7 * 7 = 49
5 * 8 = 40      6 * 8 = 48      7 * 8 = 56
5 * 9 = 45      6 * 9 = 54      7 * 9 = 63


8 * 1 = 8       9 * 1 = 9
8 * 2 = 16      9 * 2 = 18
8 * 3 = 24      9 * 3 = 27
8 * 4 = 32      9 * 4 = 36
8 * 5 = 40      9 * 5 = 45
8 * 6 = 48      9 * 6 = 54
8 * 7 = 56      9 * 7 = 63
8 * 8 = 64      9 * 8 = 72
8 * 9 = 72      9 * 9 = 81

알파벳으로 계층 출력하기.

알파벳으로 계층 출력하기

#include <stdio.h>
int main(void)
{
int value, loop_num=0, loop_tmp;

for(value=97;value<=122;loop_num++)
{
 loop_tmp=loop_num+1;
 while(loop_tmp>0)
 {
  if(value<=122)printf("%c",value);
  value++;
  loop_tmp--;
 }
 printf("\n");
}

return 0;
}


ASCII를 이용하여 갯수만큼 루프를 돌려서 출력하는 값을 가진다.

출력화면(몰랐는데 마지막이 5글자라 이상적인 피라미드 반쪽 형태가 안나온다.)

a
bc
def
ghij
klmno
pqrstu
vwxyz
prev 1 2 next