Soft Ware 130

파이썬 튜플 과 세트 ~~~!!!

튜플은 리스트와 사용 방법은 같습니다 ^^ 리스트는 [] 를 사용하는 반면에 튜플은 ()을 사용합니다. 차이점으로는 튜플은 값을 변화 시킬수 없다고 하네요 ㅎㅎ 제 짧은 생각이지만 튜플은 출력만 나타내고 리스트로 값을 수정하면 되겠다라는 생각이 듭니다 ㅎㅎ string = (1,); print(string[0]); string1 = (2); # print(string1[0]); 튜플에서는 한개 요소만 삽입하고 싶을때에는 뒤에 , 를 붙여야 한다 ------------------------------------------------------------------------------------------ 세트는 수학 시간에 배운 집합과 동일합니다 ^^ 리스트와 튜플과 달리 {}를 사용합니다 string ..

Soft Ware/python 2012.02.18

파이썬 리스트 &슬라이싱 사용하기

# -*- coding: utf-8 -*- a = [1,2,3,['a','b','c'],4,5]; print(a[2:5]); print(a[3][:3]); a1 = [1,2,3]; b = [4,5,6]; print((a1+b)*2); a1[0] = 4; print(a1); a1.sort(key=None, reverse=True); print(a1); string = "string"; #string[0] = 'a'; // 문자열은 인덱싱을 이용해서 값을 교환시 오류 발생 print(string); a2 = [1,2,3,4]; a2[1:2] = ['a','b','c']; #슬라이싱은 1부터 2사이에 값을 넣어주라는 뜻이다 print(a2); a3 = [1,2,3,4]; a3[1:3] = [[1,2,3,4,]..

Soft Ware/python 2012.02.18

파이썬 리스트의 인덱싱 사용하기 ^^

# -*- coding: utf-8 -*- print(ord('s')); print(chr(115)); color = ["red","green","gold"]; color.append("blue"); # 뒤에 추가 하기 print(color[3]); color.insert(0,"white"); # 원하는 자리에 추가 하기 print(color[0]); color.extend(["a","v"]); #한개 이상 추가 하고 싶을때 추가된 내용은 뒤에서 부터 추가 된다 print(color[5],color[6]); print(color.count("green")); # green에 대한 개수 를 반환 color += ["blue"]; # 더하기 연산자 사용시 인덱싱을 사용해야 문자열이 저장된다 print(col..

Soft Ware/python 2012.02.18

(2) 문자 와 문자열

string = "py" string1 = "thon" print(string+string1) string2 = 'Love' print(string2 * 2) 출력문 : python LoveLove 문자열에 대한 연산자를 몇가지 지원하는데 + 하면 문자열이 붙고 * 2 하면 2번 문자열을 반복 출력한다 string = "py" string1 = "thon" string2 = 'Love' print(string[0]) print(string2[0:4]) 출력문 : p Love 이렇게 C/C++ 배열처럼 사용할수 있으나 다른점은 대입 연산자 좌변쪽에는 올수 없다 즉 string[0] = 'a' 가 안된다는 말이다 . string2[0:4] 같은 경우는 문자열 0 부터 4번까지 출력하라는말이다 string =..

Soft Ware/python 2012.02.17

(1) 파이썬 문자와 문자열 쓰기

string = "Test" string1 = 'a' print(string) print(string1) 출력문 : Test a 파이썬은 문자를 " " 이나 ' ' 을 사용하면 된다구 하네요 ㅎㅎ 따로 문자가 없네요 ㅎㅎ 파이썬 처음이라서 그러나 쉽네요 ^^ ㅋㅋㅋ 파이썬은 다량의문자열을 """ """ 지원한다고 하네요 ㅎㅎㅎ 또한 이스케이프 문자들을 이용할수 있는데요 \n ----- > 개행(줄바꿈) \t ------ > 탭 \r ------ > 캐리지 리턴 \0 ------- > 널문자 \\ ------- > '\' 문자 \' ------- > 단일 인용부호(') \" ------ > 이중 인용부호(") print("\ttest\nfirst\n\0\rtest1") print('last\rmember'..

Soft Ware/python 2012.02.17

파이썬 2진수 8진수 16진수 사용하기

friend = 0o10 Friend = 0x10 Friend2 = 0b10 print(friend,Friend,Friend2) 파이썬은 0o하면 8진수로 인식하고 0x하면 16진수 0b 하면 2진수로 인식한다. 그리고 파이썬은 c/c++ 처럼 ;를 안붙인다 ㅎㅎㅎ 또한 정수로 초기화 해주면 정수로 인식하고 실수로 초기화 해주면 실수로 인식한다 ㅎㅎ 파이썬 재미있네~~ ㅋㅋㅋ print(hex(38)) print(oct(38)) 처음 같은 경우에는 16진수로 입력 받은것을 출력하는것이고 두번째 경우에는 8진수로 입력받은것을 출력하는 내용이다 ㅎㅎ 출력문 : 0x26 0o46 0b100110 ----------------------------------------------------------------..

Soft Ware/python 2012.02.17

인스택 큐 스핀 록에 대해서 ~~!!

인스택 큐 스핀 록은 익스큐티브 스핀 록의 단점을 보안 하고자 나온 스핀 록이다 . 자 그럼 익스큐티브 스핀 록 에 단점에 대해서 알아 봐야 겠죠? ㅎㅎ 그래야 이해 하기 쉬우니깐요 ㅎㅎㅎㅎ 익스큐티브 스핀 록은 서로 경쟁 상태에 있는 프로세서가 스핀 록을 얻기 위해 같은 메모리 영역을 계속 수정해야 하며, 메모리 영역을 수정하게 되면 스핀 록을 얻고자 하는 프로세서는 동일한 캐시 라인을 반복해서 메모리로 가져와야 합니다. 즉 cpu가 메모리로부터 데이터를 가져올때 32바이트,64,128바이크 크기의 캐시 라인을 가져 오는데요 캐시 라인은 성능 향상을 위해 존재하는것이지만 멀티스레드 환경에서는 메모리의 갱신을 어렵게 합니다. 그 이유는 하나의 CPU 코어에서 읽어들인 캐시 라인 데이터를 변경하는 시점에서..

익큐티브 스핀 록에 대해서 ~~~

익스큐티브 스핀 록은 드라이버에서 가장 많이 사용되는 스핀 록으로서 주로 데이터 구조체를 보호하기 위해 사용된다고 하네요 ^^ 익스큐티브 스핀 록은 디스패치 레벨이하에서 실행 되는 스레드만이 획득 가능하구요. 익스큐티브 스핀 록을 사용하기 위해서는 스핀 록 구조체를 위한 변수를 선언 해야 하며 이 변수는 전역 변수나 페이징이 불가능한 Device_Extension 구조체 내에 스핀 록 변수를 선언 해야 합니다 ^^ 스핀 록을 획득 하기 위해서 스핀 록 변수를 초기화 해야되는데 초기화 함수로는 KeInitializeSpinLock()함수를 사용하여 처리하고 사용하기 위해서는 KeAcquireSpinLock() 함수를 호출 합니다 ^^ KeAcquireSpinLock() 이 함수는 IRQL를 조사 하여 스레..