일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 취약점
- .nret core 배포
- Docker
- C언어
- LOB
- architecture
- packet filter
- cbpf
- ioctl
- packet flow
- wnourefresh
- NAPT
- ncurses
- 어셈블리어
- Compiler
- REDIS
- iptables
- epoll_wait
- wrefresh
- epoll
- level trigger
- .net core 7
- 풀이
- BOF
- doupdate
- rfc5508
- DOCKER-USER
- edge trigger
- vtable
- mvwin
- Today
- Total
목록Computer Science (129)
Tuuna Computer Science
수요일에 프로그래밍 시험을 봤는데 2번 문제에 추가적인 배열을 만들지 않고 문자열의 빈도수를 구하라는 문제를 발견했다 :( 처음에 그냥 if else if문 27개를 만들어서 구할 생각이였지만 이건 좀 아니라는 생각에 알고리즘을 구상한 결과 아스키코드 0x20 ~122까지 돌리는 것이였다! 123456789101112131415161718192021222324252627282930313233343536373839404142#include #include int main(void){ int check; char line[80]; gets(line); int j; int a, tmp, result1=0, result2=0,i; int len=0; for(i=0;line[i]!='\0';i++) { len++..
요즘 파이썬을 쓰다보니(물론 only 절차) 파이썬의 리스트에 대한 여러 메소드가 너무 매력적이였다... 그래서 파이썬처럼 하고자 C에서 헤더파일을 만듦. 간단하게 /*[How to use?] array_pop(int* ptr, int number, int size); 특정 원소를 꺼낸다. int sort(int* ptr, int size); 오름차순 정렬 int array_sum(int* ptr, int size); 배열원소의 합을 구함 int array_index(int* ptr, int number, int size); 원하는 문자의 인덱스를 뽑아온다. int sort_reverse(int* ptr, int size); 내림차순 정렬 int remove_overlapped(int* array_pop..
; %include "asm_io.inc" 부분은 주석처리 하셔야 합니다~ 전에 C 라이브러리 함수인 strlen을 만들어두고 블로크 포스팅을 하지 않고 묵혀뒀기에... 올리려한다. 1234567891011121314151617181920212223242526272829303132333435363738394041%include "asm_io.inc" segment .bss input resd 0 ;input이라는 변수를 길이의 변수로 둔다. segment .data string db "Hello", 0 ;측정하려는 문자열 print db "%d", 0 ;printf format 형식 segment .text global asm_main extern printf asm_main: push ebp mov e..
C library_fuction인 strcpy를 어셈블리로 구현해보았다. 출력부분을 write system-call로 구현하려 했지만 귀차니즘이 발생하여 pritnf을 extern해오는 걸루... 어셈블러 : nasm 32bit 123456789101112131415161718192021222324252627282930313233343536%include "asm_io.inc" segment .bss segment .data src db "hello my friend", 0 dest times 100 db 0 format db "%s", 0 ;printf의 format 형식 segment .text extern printf global asm_main asm_main: push ebp mov esp, e..
삽질하면서 풀던 부동소수점 관련 문제가 있었다. 결국 풀어서 희열느끼면서 풀이 쓰는중 일단 부동소수점에 대한 개념부터 알아보자. 먼저 간단한 예시로 정수 1은 실수 1이다. 하지만 정수 1.2를 실수로 어떻게 표현할 까? 그래도 1.2다. 여기서 문제가 발생한다. 이 실수 1.2를 컴퓨터가 사용할 수 있는 이진수로 나타낼 수 있는가 이다. 이를 나타나게 해주는게 부동소수점이다. 이 부동소수점은 IEEE floating point표준안을 따르는데 이 표준안이 어떻게 되어 있냐면 이렇게 나타낸다. 처음 s부분 1비트를 부호비트라 한다, 즉 음수면 1 양수면 0 편향지수는 말그래로 32bit기준 바이어스인 127에 지수값을 더한것이다. 좀 이따 자세히 설명할 부분이다. 그리고 실질적인 값을 나타내는 가수부분이..
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816..
extern printfextern scanf %include "asm_io.inc" segment .data msg db "input your number : ", 0 format_scanf db "%d", 0 segment .bss input resd 1 segment .text global asm_main asm_main: enter 0,0 pusha push msg call printf add esp, 4 push input push format_scanf call scanf add esp, 4 push dword [input] call bin add esp, 4 popa leave ret ;십진수를 바이너리로 보여줌 segment .data bin_array times 100 dd 0 bin_p..
extern printfextern scanf %include "asm_io.inc" segment .data format_msg db "%d %d lcm is %d",10, 0 msg db "input your two number : ", 0 format_input db "%d %d", 0 segment .bss input1 resd 1 input2 resd 1 segment .text global asm_main asm_main: enter 0,0 pusha push msg call printf add esp, 4 push input2 push input1 push format_input call scanf add esp, 12 mov eax, 0 ; return input 0 push dword [..
물론 형편없는 코드지만 공부용으로 작성 ~ 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162%include "asm_io.inc" extern printf segment .data format db "%d x %d = %d", 0 hello db "Hello this is a group of game", 0 segment .bss input resd 0; 합을 저장할 변수 segment.text global asm_main asm_main : enter 4, 0 pusha push hello call printf add esp, 4 call prin..