분류 전체보기

HDD, SSD, DRAM에 대해서 학습하고 기록하고자 포스팅을 작성하게 되었다. 첫 번째 글은 HDD이다!💻 컴퓨터 구조시작하기에 앞서 컴퓨터 구조를 간단하게 훑고 시작하려고 한다.위키피디아에 의하면 컴퓨터 구조를 간단하게 나타낸 그림은 위와 같다. 이번 글에서 알아볼 내용은 Second Memory에 속한다.운영체제 책에서 찾은 Computer System의 그림은 위와 같다. 나는 좀 더 이 그림이 나에게 잘 와닿는 것 같다. 결국 컴퓨터는 CPU, Memory, I/O 장치로 이루어져 있다고 할 수 있다.🗄️ 주기억장치, 보조기억장치HDD, SSD, DRAM의 차이는 위의 그림에 잘 나와있다. HDD, SSD는 Secondary storage에 포함되고 DRAM은 primary storage에..
· → Problems
🤓 문제https://www.acmicpc.net/problem/1700✨ 풀이캐싱과 느낌이 정말 비슷하다. 왜냐하면 멀티탭에 꽂혀있느면 바로 사용이 가능한 것이고(Hit), 멀티탭에 없으면 플러그를 꽂아야 한다. 하지만 코드는 한정적이기 때문에 효과적으로 멀티탭을 관리해야 한다. 첫번째 풀었던 방법은 캐싱을 생각하면서 가장 사용이 많이 된 것을 남기고 나머지를 교체하는 알고리즘을 사용했지만 이 문제의 중요한 점은 미래를 안다는 것이다. 미래를 모르는 상황에서는 가장 사용이 많이 되거나 가장 최근에 사용한 것을 살리는 식으로 캐싱을 하면 되지만 미래를 아는 순간 이야기는 달라진다. 멀티탭이 꽉차게 되면 가장 늦게 쓰는 플러그를 빼면 된다. 어자피 가장 최근에 쓰는건 결국 사용하기 때문에 일단 넣어두어야..
컴퓨터는 소수를 어떻게 표현할까? 컴퓨터는 모든 수를 이진수로 표현한다. 그렇다면 우리가 흔히 쓰는 소수들은 어떻게 표현할까?📌 고정 소수점 (Fixed-Point)그냥 이진수 그대로 사용하면 소수를 표현할 수는 있다. 예를 들면 8비트의 숫자가 있다면 4비트는 정수 부분 4비트는 소수 부분으로 나눌 수 있겠다.0 0 0 0 (정수) 0 0 0 0 (소수)이렇게 되면 3.75 같은 수는 아래와 같이 나타낼 수 있다. (소수를 표현하는 데에 한계는 아랫부분에서 다룰 예정이다)정수 부분: 0011 (1 + 2 = 3)소수 부분: 1100 (0.5 + 0.25 = 0.75)3.75 = 0011 1100하지만 이렇게 소수점 부분을 고정하게 된다면 8비트의 경우 -128 ~ 127 까지 표현할 수 있었지만 4비..
어렴풋이 알고 있었는데 정확하게 정리해 보고자 이렇게 글을 써보고자 한다. 과연 컴퓨터는 음수를 어떻게 표현할까? 8비트를 기준으로 아래와 같은 숫자 5가 있다고 생각해 보자. 0 0 0 0 0 1 0 1음수를 어떻게 표현할 수 있을까? -5를 나타내면 되니까 맨 마지막 자리 수를 양수는 0 음수는 1로 생각하면 어떨까?1 0 0 0 0 1 0 1만약에 이 두 수를 더한다면? 결코 0이 나오지 않을 것이다. 결국 그렇다는 것은 덧셈을 할 때 복잡한 방식을 취해야 한다는 것이다. 또한 +0, -0 두 가지 경우의 0이 생기기 때문에 중복을 해결해줘야 하는 문제도 발생한다. 0 0 0 0 0 1 0 1 (5)+ 1 0 0 0 0 1 0 1 (-5)-------------------- 1 0 0 0 1 0..
· 🦜 Swift
🐣 지난 글지난 글에서는 Swift 언어의 탄생에 대해서 아주 간략하게 알아봤다. 이번 글에서는 그렇다면 이렇게 등장하게 된 Swift 언어의 특징은 무엇이 있을까에 대한 것을 알아보려고 한다. [Swift] Swift 언어의 탄생🦜 시작하기 앞서사실 어떻게 보니 내가 사용하고 있는 프로그래밍 언어 Swift의 탄생과 특징에 대한 정리를 제대로 못했던 것 같아 이렇게 정리하게 되었다. 왜 탄생하게 되었는지, 그리고 특징swift-library.tistory.com✨ Swift 의 특징사실 가장 크게 생각나는 특징은 Swift로 코드를 작성하면 macOS, iOS, iPadOS, watchOS 애플의 모든 기기에서 작동할 수 있는 앱을 만들 수 있다는 점이다. 그 이외에 프로그래밍 적으로 살펴본다면....
· 🦜 Swift
🦜 시작하기 앞서사실 어떻게 보니 내가 사용하고 있는 프로그래밍 언어 Swift의 탄생과 특징에 대한 정리를 제대로 못했던 것 같아 이렇게 정리하게 되었다. 왜 탄생하게 되었는지, 그리고 특징은 무엇인지에 대해 조금 더 깊이 알아보고자 이렇게 글을 작성하게 되었다.🐣 Swift 의 탄생Swift는 2014년 WWDC에서 공개되었다. 약 2시간짜리 영상인데 Swift가 등장한 부분의 타임라인은 약 1시간 45분쯤에 발표가 되었다. 마지막에 Swift를 소개한 것 같다.소개 영상에서는 Fast, Modern, Safe 하다고 설명도 하고 간단한 토이 프로젝트를 실습해 보면서 Swift를 알려주게 된다. 이 당시 Objective-C 개발자들은 당혹스러울 수도 흥미로웠을 수도 있겠다는 생각을 했다.🧐 S..
· → SwiftUI
🙂 이미지 선택 구현아래와 같은 PhotosPicker를 통해 이미지를 선택하는 화면을 구현했다.코드는 아래와 같이 간단하게 구현했다. PhotosPickerItem에서 이미지는 여러 가지 방법으로 가져올 수 있었지만 우선 아래와 같이 최대한 가로로 짧은... 방식으로 구현했다.struct ContentView: View { @State private var selection: PhotosPickerItem? @State private var image: UIImage? var size: CGFloat = 180 var body: some View { PhotosPicker(selection: $selection) { Group { ..
· → SwiftUI
🥸 해결하고자 하는 상황만약 아래와 같은 간단한 NavgationStack이 있다고 해보자. 여기서 부분이 맘에 안들어서 이 부분을 바꾸고 싶다고 하자.물론 다양한 방법으로 커스텀이 가능하지만 아래와 같은 방법으로 바꿔보았다고 하자. 뒤로가기 버튼을 숨기고 툴바아이템을 추가해주었다. 액션은 dismiss를 활용했다.struct NextView: View { @Environment(\.dismiss) private var dismiss var body: some View { Text("Some View") .navigationBarBackButtonHidden() .toolbar { ToolbarItem(p..
Swift librarian
'분류 전체보기' 카테고리의 글 목록 (4 Page)