분류 전체보기360 PyQt.마우스이벤트 pyautogui 마우스제어 PyQt는 아니고 pyautogui라는걸 사용해서 마우스 이동,클릭 등의 제어를 해보자. pyautogui 모듈을 설치하자 pip install pyautogui 상세하게 알고 싶으면 pa 라이브러리 정의돼있는 파일 뜯어서 보면된다. 예시코드 참고 import pyautogui as pa #현재 마우스 좌표 출력 print(pa.position()) print(pa.position().x) print(pa.position().y) #마우스 이동(절대값 위치로 이동) pa.moveTo(100,400) #마우스 이동(현재위치에서 상대적으로 이동) pa.move(100,400) """마우스 클릭 관련 API 원형""" # def click # ( x=None, y=None, clicks=1, interval=.. 2021. 11. 16. 운영체제 로더의 개념 컴파일.링킹을 통해 만들어진 exe 파일은 하드디스크에 파일형태로 저장된다. 이 exe 파일이 실제로 cpu에 의해 실행이 되려면 파일의 내용이 메모리에 적재되야한다. 디스크에 저장된 exe 파일을 유저가 실행했을 때 파일의 내용을 메모리에 옮겨담는 역할을 하는 것이 로더이다. 이러한 로더가 윈도우와 같은 운영체제에 구현되어 동작되고 있는 것이다. 한편, 로더가 sw를 메모리에 적재하는 기법은 다양한 기법이 존재한다. 이때 가장 핵심이 되는 내용은 sw 내에서 (프로세스에서) 정의되어 있는 메모리주소를 어떻게 실제 컴퓨터의 HW 메모리주소에 매핑할 것인가? 이다. 다른 글에서 말했듯이 sw는 sw 별로 각자 독립적인 4Gbyte의 주소공간을 갖고 있고 그 주소를 바탕으로 기계어가 코딩되어있다. 그러나 로.. 2021. 11. 14. 가상 주소공간(virtual address space) 32bit 아키텍쳐의 컴퓨터에서 하나의 Sw는 각각 4Gbyte의 메모리 공간을 할당 받는다. (왜냐면 2^32 가 4Gbyte 이기 때문) 이 4GByte의 메모리 공간을 가상주소공간이라고 부르는데, 그 이유는 이것은 각각의 sw마다 독립적으로 갖고 있는 주소공간이기 때문이다. 또한, 해당 프로그램이 실제로 메모리에 올라가서(로드되서) 실행될 때, sw 코드상에 정의된 메모리주소와 실제 메모리 물리주소가 다르기 때문에 이것을 가상주소공간이라고 부른다. (참고로 윈도,리눅스 등 로더를 사용한 멀티프로세싱이 가능한 운영체제를 갖지 않는, 오직 하나의 exe 파일만이 실행되는 임베디드 sw코드의 경우. 코드에 정의된 메모리주소와 실제 메모리 주소 영역이 완전히 동일하게 된다.) 예를 들어 test1.exe .. 2021. 11. 14. dll (다이나믹 링킹 라이브러리) 개념 앞에서 빌드의 개념을 설명할 때. 라이브러리 파일도 링킹 단계에서 함께 링크되어야한다고 했다. 근데 다이나믹 링킹이 뭐냐면 exe 파일을 만드는 단계에서 라이브러리 파일을 링크하는게 아니라 exe 파일이 실행되서 해당 라이브러리를 런타임에 실제로 '호출'할 때 가져다 쓰겠다는 소리이다. 무슨말이냐면 test1.c - > test1.exe test2.c -> test2.exe 두개의 서로 다른 exe 파일을 만드는 상황. 이때 두개의 파일은 모두 printf 라는 라이브러리를 사용한다. printf를 사용하기 위해서는 링크단계에서 해당 라이브러리가 함께 링크되야한다. 그래서 test1.exe와 test2.exe는 내부에 각각 printf 라이브러리를 갖게 된다. 이때 한 컴퓨터에서 test1.exe와 te.. 2021. 11. 14. 컴퓨터 프로그램의 개념(컴파일.링크.빌드) 이해 컴파일.링크.빌드의 개념 로더의 개념. Cache와 TLB의 개념 등등은 kocw 사이트에 있는 고려대학교 최린 교수님의 2019년 컴퓨터구조 강의를 공부한 내용을 정리하였다. 아래는 강의 링크 및 목차 http://www.kocw.or.kr/home/cview.do?cid=26adea597863b523 컴퓨터구조 컴퓨터의 구성 요소인 프로세서와 메모리, 입출력 장치의 동작원리와 내부 구조에 대하여 학습한다. www.kocw.net 시간 있으면 해당 강의보면 어려운 내용 없이 이해가 잘 된다. 근데 일일이 다시 보기 귀찮으니까 대강의 개념만 블로그에 정리하려함. sw는 컴퓨터가 수행할 수 있는 명령어들을 나열해놓은 것이다. 컴퓨터는 cpu를 갖고있는데 cpu는 저마다 고유의 instruction set을.. 2021. 11. 14. 파이썬 - str 클래스. 문자열 클래스 사용방법 개요 ' ' , " " , """ """ >> hello world >>> hello world >>> hello world 여러줄 표현하는 방법 1) c언어에서와 마찬가지로 \n 을 쓰면 줄 바꿈을 의미한다. 2) 근데 큰 따음표 3개 쓰면 특징이 있는데 \n 표현 없이도 여러줄의 표현이 가능하다 temp1 = "hello world\nnew line1\nnew line2" temp2 = """hello world new line1 new line2""" print(temp1) print("******************") print(temp2) >>> hello world >>> new line1 >>> new line2 >>> ****************** >>> hello worl.. 2021. 11. 13. Trace32 cmm 개요 및 유용한 명령어들 창 별도로 만들어서 밖으로 빼기 제일 앞에 we. 를 적는다 wactch창에 구조체 등록시 멤버변수 펼쳐보기 v.w.%open.1 test1 open 뒤에 숫자는 몇 단계까지 펼칠건지 나타냄. ▶ File 메뉴에서 run script를 고른후 cmm 파일을 선택하면, gui 창에 해당 스크립트가 나타나지는 않고 그냥 해당 스크립트 안에 있는 내용을 그대로 실행시켜버린다. 이것을 커맨드 명령으로 치면 do "cmm파일명" ▶ File 메뉴에서 edit script를 고른 후 cmm 파일을 선택하면, gui 창에 해당 스크립트 파일을 볼 수 있게 열린다 커맨드로 하면 pedit "cmm파일명" ▶ cmm 파일에서 제일 앞에 ; 를 쓰면 주석을 의미한다. ▶. 변수명 확인할 수 있게 watch 창에 등록하기 .. 2021. 11. 12. 파이썬 액셀제어 xlwt 개요 xlrd는 xls 파일을 읽는용도이고 xlwt는 xls 파일을 생성하는 용도이다. openpyxl은 읽기 쓰기 한번에 되는데 xlrd. xlwt가 나눠져있는게 불편하다는 생각이 들지만 어쩔수 없다. 2021. 11. 12. 파이썬 액셀제어 xlrd.개요. 공식문서 파이썬으로 액셀 제어하는 라이브러리가 종류가 제법 많은 것 같다. 각 라이브러리의 장단점은 일단 잘 모르겠다. 나는 원래 openpyxl 이라는 라이브러리를 사용하고 있었는데 왜 xlrd 라는걸 쓰게됐냐면 openpyxl을 사용하는데 어느날 파일의 시트이름을 쭉 print 시켜봤는데 수초 이상 시간이 오래걸리는걸 발견하였다. 그래서 openpyxl이 속도가 너무 느린거 같아서 다른걸 찾아보다가 xlrd 를 새로 공부하게 되었다. xlrd가 특별히 속도가 빠른지 어떤지는 잘 모르겠다. 근데 사용방법이나 이런게 openpyxl이랑 거의 유사하더라. 근데 xlrd는 엑셀 읽기만 가능하고 write를 하려면 xlwt 라고 별도 라이브러리를 따로 써야한다. ※ 참고 xlrd는 xlsx를 지원하지 않고, .xls .. 2021. 11. 10. 이전 1 ··· 28 29 30 31 32 33 34 ··· 40 다음