2010년 11월 28일 일요일

졸업작품전시회

하루죙일 서있기 힘들다. ㅋㅋ
그덕에 무릅이 아프다 제기랄!!
이상수! 이형주!  ㅅㅂㄴㄷ!!

2011.11.26(금)

오랜만에 모였다. ㅋㅋ

동진이형, 웅배, 형주, 나 ㅋㅋㅋ
1차는 공덕에서 족발!!  맛있다.  기분이 좋아서 오랜만에 과음한듯 ㅋㅋㅋ

그후  형주덕에 신촌까지 갔다 ㅋㅋ

이건 신촌에서.. 
동진이형 "너 너무 머리가 커!!"
     웅배  "난 키가 크잔나요!" ㅋㅋㅋ

아래사진은.. LG에릭슨 셤보나서 심심해서 셀카 찍었음 ㅋㅋㅋ

화질이 안좋아서 피부가 짱 좋게 나왔다 ㅋㅋㅋ  ^^

2010년 11월 27일 토요일

좋은글

청춘이여
아직 오지 않은 내일도 언젠간 그대가 누리게 될 오늘
비록 지금 손에 들려 있는 건 작은 소쿠리 하나 뿐이지만
나눌 수 있는 마음과 뜨거운 심자을 가진 그대라면
청춘이란 꿈을 꾸기에 결코 부족 하지 않다.

2010년 11월 11일 목요일

휴맥스 2차면접(최종, 임원) 후기

2010.11.12(금) 

10시까지 오라고 해서..
9시 45분쯤에 대기 장소에 도착했다.

자리에 앉았있는데. 4명을 호명하더니 면접 장소로 대리고 가는 거 같았다..

난 머지??  왜 10시 까지오라고 한겨 ㅋㅋ  그냥 기다리고 있었는데
인사 담당자가 누구와 통화 하더니 내 이름을 부르더니 같이 올라가란다..

이상하다.. 원래 4명이 보는 거 같은데  갑자기 내가 낀 이유는 멀까??
어째든 그래서 우리는 5명이 면접을 보았다.

면접관은 총 7명 이었다.  변대규 사장도 있었다..  잘생겼다...

1분정도 자기소개를 했다.    지진희 이제는 잘 안먹인다. ㅋㅋ
그리고 나서 질문을 아무한테 랜덤으로 했다...
근데  나한테는 딱 2번의 질문만 했다.

1. 프로젝트 경험을 말해 보세요.
-> 학교에서 햇던걸 말했드만 학교에서 한거 말고 외적으로 한거 말해 보란다.... ㅅㅂ.. 없는데..
그래서 "없는데요" 했더만, 그러면 정진호씨의 소프트웨어적 역량을 말해 보란다....
그래서 자기소개서에 적었던 내용을 말햇더니..  그건 여기 잇잔아 다른거..  좀 멍때리다가
공학인증 애기를 하면서 나는 하드웨어 적인 지식을 갖추고 있기 때문에 더! 경쟁력 있다.
라고 말한거 같음..
이게 끝임. ㅋㅋ  지금 보니 질문은 하나인듯. ㅋㅋㅋ

아.. 떨어질것 같아.. 흑흑....

한솔 PNS/인티큐브 1차 면접 후기

2010.11.11(목)
14:50까지 오라고 되어있었다.
학교에서 면접 준비를 하다가 너무 심심해서 출발 했는데...
도착 해보니 14시 였다.... 제기랄

인사담당자와서 15:10분 부터 시작 할려고 50분까지 오라고 한건데..
너무 일찍 오셨네요.. 이런다 ㅋㅋㅋㅋ  음료수만 졸라 먹음 ㅋㅋ

조금 있다고 2명이 더왔다.  토론은 4명이서 한다고 하더만, 우리조 한명이 안와서 옆조 사람과 합쳐서 진행했다.  토론 시간은 총 20분!
주제 : 체벌에 관한 것이었는데..  현재 체벌이 전면 금지 되었는데, 말을 듣지 않는 학생들을 어떻게 하는게 좋을지에서 대해서 토론해보는 것이었다.  찬반이 아니라.... 약간은 토의 같은 느낌이었다. ;;

토론은 무난히 한거 같다....

그리고 장소를 이동해서 10분 정도 대기한 후에 실무 면접이 이어졌다.

먼저 1분 정도 자기소개를 했다.
그리고 질문이 이어졌다.
나한테는..
특기를 농구라고 적었더니, 키가 몇이냐?  작은 편인데 농구 잘할 수 있냐?
프로젝트 경험에 대해서 물어봤다.
그리고 이어서 자소서에 써놓은 프로젝트도 물어 보길래 설명했다.
진호씨는 모바일 쪽에 지원 하셨는데 현재 모바일 쪽에서 무슨일을 하고 있는지 아시나요?
대충 말함 ㅋㅋㅋ
그리고 마지막에 왜 한솔에 들어오고 싶은지 말해 보란다. 

그냥 무난하게 본것 같음..

2010년 11월 9일 화요일

2010.11.09_어셈 이미지 반전 1, 2, 4 픽셀

#include <stdio.h>
#include <windows.h>

const int image_Size = 256*256;
const unsigned char mask1 = 0xFF;
const unsigned short mask2 = 0xFFFF;
const unsigned int mask4 = 0xFFFFFFFF;

LARGE_INTEGER diff_ticks;
LARGE_INTEGER freq, proc_start, proc_end;

void invertImageC1byte(unsigned char *src, unsigned char *dst);
void invertImageC2byte(unsigned short *src, unsigned short *dst);
void invertImageC4byte(unsigned int *src, unsigned int *dst);

int main()
{
 char input[]="gLenna_256_256.raw";
 char output[]="result.raw";

 unsigned char *src, *dst;
 unsigned char *p1;
 unsigned short *p2;
 unsigned int *p4;
 double *p8;

 FILE *fin=0, *fout=0;
 
 fin = fopen(input, "rb");

 if( !fin )
 {
  printf("file open error\n");
  return 0;
 }

 src = (unsigned char*)calloc(sizeof(unsigned char)*image_Size, 1);
 dst = (unsigned char*)calloc(sizeof(unsigned char)*image_Size, 1);
 p1 = src;
 p2 = src;
 p4 = src;
 p8 = src;

 fread(src, sizeof(unsigned char), image_Size, fin);
 fclose(fin);

 QueryPerformanceCounter(&proc_start);
 //////////////////

 invertImageC1byte(p1, dst);
// invertImageC2byte(p2, dst);
// invertImageC4byte(p4, dst);
// invertImageC8byte(p8, dst);

 //////////////////
 QueryPerformanceCounter(&proc_end);
 QueryPerformanceFrequency(&freq);

 diff_ticks.QuadPart = (proc_end.QuadPart - proc_start.QuadPart);
 fprintf(stdout, "Elapsed CPU time : %.12f sec \n\n", ((double)diff_ticks.QuadPart/(double)freq.QuadPart));

 fout = fopen(output, "wb");
 fwrite(dst, sizeof(unsigned char), image_Size, fout);
 fclose(fout);

 return 0;
}

void invertImageC1byte(unsigned char *p1, unsigned char *dst)
{
 int i;

 printf("1byte \n");
 for(i=0; i<image_Size; i++)
  dst[i] = p1[i] ^ mask1;
}

void invertImageC2byte(unsigned short *p2, unsigned short *dst)
{
 int i;
 int end = image_Size >>1;

 printf("2byte \n");
 for(i=0; i<end; i++)
  dst[i] = p2[i] ^ mask2;
}

void invertImageC4byte(unsigned int *p4, unsigned int *dst)
{
 int i;
 int end = image_Size >>2;

 printf("4byte \n");
 for(i=0; i<end; i++)
  dst[i] = p4[i] ^ mask4;

}


void invertImageAsm1byte(unsigned char *src, unsigned char *dst)
{
 printf("1byte Asm\n");
 __asm
 {
  mov esi, src
  mov edi, dst
  mov ecx, image_Size
L1:
  mov al, [esi]
  xor al, mask1
  mov [edi], al
  add esi, 1
  add edi, 1
  loop L1
 }
}

void invertImageAsm2byte(unsigned short *src, unsigned short *dst)
{
  printf("2byte Asm\n");
 __asm
 {
  mov esi, src
  mov edi, dst
  mov ecx, image_Size
 
L1:
  mov ax, [esi]
  xor ax, mask2
  mov [edi], ax
  add esi, 1
  add edi, 1
  loop L1
 }

}
void invertImageAsm4byte(unsigned int *src, unsigned int *dst)
{
  printf("4byte Asm\n");
 __asm
 {
  mov esi, src
  mov edi, dst
  mov ecx, image_Size
  shr ecx, 2
 
L1:
  mov eax, [esi]
  xor eax, mask4
  mov [edi], eax
  add esi, 4
  add edi, 4
  loop L1
 }
}


 

2010년 11월 8일 월요일

2010.11.09_어셈

#include <stdio.h>
/*
void subImageByC(uint8 *src1, uint8 *src2, uint8 *dst);
void addImageByC(uint8 *src1, uint8 *src2, uint8 *dst);
void avgImageByC(uint8 *src1, uint8 *src2, uint8 *dst);
*/
void subImageByAsm(unsigned char *src1, unsigned char *src2, unsigned char *dst);
void addImageByAsm(unsigned char *src1, unsigned char *src2, unsigned char *dst);
void avgImageByAsm(unsigned char *src1, unsigned char *src2, unsigned char *dst);

const int image_Size = 256*256;

int main()
{
 char input1[]="gLenna_256_256.raw";
 char input2[]="gBarbara256_256.raw";
 char sub[]="sub.raw";
 char add[]="add.raw";
 char avg[]="avg.raw";

 unsigned char *src1, *src2, *dst;

 FILE *fin1=0, *fin2=0, *fout=0;
 
 fin1 = fopen(input1, "rb");
 fin2 = fopen(input2, "rb");

 if(!fin1 && !fin2)
 {
  printf("file open error\n");
  return 0;
 }

 src1 = (unsigned char*)calloc(sizeof(unsigned char)*image_Size, 0);
 src2 = (unsigned char*)calloc(sizeof(unsigned char)*image_Size, 0);
 dst = (unsigned char*)calloc(sizeof(unsigned char)*image_Size, 0);

 fread(src1, sizeof(unsigned char), image_Size, fin1);
 fread(src2, sizeof(unsigned char), image_Size, fin2);

 fclose(fin1);
 fclose(fin2);
 
 fout = fopen(sub, "wb");
 subImageByAsm(src1, src2, dst);
 fwrite(dst, sizeof(unsigned char), image_Size, fout);
 fclose(fout);

 fout = fopen(add, "wb");
 addImageByAsm(src1, src2, dst);
 fwrite(dst, sizeof(unsigned char), image_Size, fout);
 fclose(fout);

 fout = fopen(avg, "wb");
 avgImageByAsm(src1, src2, dst);
 fwrite(dst, sizeof(unsigned char), image_Size, fout);
 fclose(fout);


 return 0;
}

void subImageByAsm(unsigned char *src1, unsigned char *src2, unsigned char *dst)
{
 __asm
 {
  lea esi, src1
  lea edi, src2
  lea edx, dst
  mov ecx, 256*32
L1:
  movq mm0, [esi]
  movq mm1, [edi]
  movq mm2, [edx]
  psubb mm0, mm1

  movq [edx], mm0
  loop L1
 }
}

void addImageByAsm(unsigned char *src1, unsigned char *src2, unsigned char *dst)
{
}
void avgImageByAsm(unsigned char *src1, unsigned char *src2, unsigned char *dst)
{
}