TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: Trivia questions about Computer Science

1 点作者 codeguppy超过 4 年前
Hello Community,<p>I&#x27;m preparing a list of trivia &#x2F; basic questions about computer science for beginners.<p>After this I intend to publish answers to these questions (in text &#x2F; video format).<p>For now I have the following questions. Can you please contribute other questions that beginners may find helpful?<p>- What is a bit?<p>- Why there are 8 bits in a byte?<p>- How many bits do you need to store the number 34234230950425?<p>- Why a typical 32bit CPU can access 2^32 = 4GB memory, but a typical 8 bit CPU can access 2 ^ 16 = 64KB memory?<p>- My phone has two types of memories. One is 128GB, the other is 4GB. What is the difference between them?<p>- What is the difference between a compiler and an interpreter?<p>- Why the expression 0.1 + 0.2 === 0.3 is evaluated to &quot;false&quot; in JavaScript?<p>- What is HTML?<p>- What is JavaScript?<p>- What is machine language?<p>- What is Raspberry Pi?<p>- What is Arduino?<p>- What is a microcontroller?<p>- How is text stored into computer memory?

1 comment

schoen超过 4 年前
I like these kinds of discussions, but sometimes when I&#x27;ve tried to brainstorm along these lines I felt like everything exploded (not in the sense of &quot;going wrong&quot; but in the sense of &quot;becoming very big very quickly&quot;). Sometimes it feels like there are just a few concepts to get across to achieve computer literacy, and then when we try to list them, it turns out there are many more than we thought! :-)<p>What is an algorithm?<p>What is a CPU?<p>What is a pointer?<p>What is a bug?<p>Why is software usually so fragile or unreliable?<p>Why&#x2F;how is it possible to break into computers over a network?<p>What is encryption?<p>What is a loop?<p>What is a variable?<p>What is Boolean logic?<p>What is a data type?<p>Why is 2+2 different from &quot;2&quot;+&quot;2&quot; and &quot;2+2&quot; in Python?<p>What is a programming language?<p>How many programming languages are there and where do they come from?<p>Why do people want more than one programming language?<p>Why do people say that programming languages are or aren&#x27;t &quot;more powerful&quot; than one another? How about &quot;more efficient&quot;?<p>What does it mean to say that a language is &quot;higher level&quot; or &quot;lower level&quot; compared to another?<p>What is a bus?<p>Why do computers use powers of two to measure so many things?<p>Why do computer scientists like to count starting with 0?<p>What is the difference between bitwise and Boolean logic operations, in languages that distinguish them? (E.g. | versus ||, or &amp;&amp; versus &amp;, or ~ versus !.)<p>What is a cache?<p>What is a proxy?<p>What is a server?<p>What is a network layer?<p>What is an address?<p>What are layers of abstraction in general, and why are they so important in computing? Why do people criticize or discourage &quot;layering violations&quot; or &quot;breaking abstraction barriers&quot;?<p>What is a protocol?<p>What is a file format?<p>What is a file?<p>What is a formal language or formal grammar? Why is parsing so important and so difficult?<p>What is a software object?<p>What is a library?<p>What is &quot;structured&quot; versus &quot;unstructured&quot; data?<p>What is an API?<p>How do programmers think and talk about correctness of programs, and how do they try to confirm whether their programs are correct?<p>What is an operating system?<p>What are emulation and virtualization?<p>What is a data structure?<p>What is computational complexity?<p>What are some of the software tools that we use in developing or distributing software, in addition to compilers?<p>Why did E. W. Dijkstra dislike GOTO so much, and what did he propose as an alternative?<p>What is a Turing machine? How about von Neumann architecture?<p>What is serialization?<p>What is the difference between front-end and back-end development in a web application?<p>How are computers better or more powerful today than they were in the past?<p>What are logic gates?<p>What is a race condition?<p>Why is Google paying for some programs that are currently in C or C++ to be rewritten in other languages such as Rust?<p>What&#x27;s an instruction set? Why are there multiple different instruction sets? Why does Intel add more stuff to its instruction set over time? How does the same program work on different CPUs if they have slightly or completely different instruction sets?<p>What are hardware, software, and firmware?<p>What does it mean for a computer, or a video game console, or a program, to be &quot;8-bit&quot;, &quot;16-bit&quot;, &quot;32-bit&quot;, or &quot;64-bit&quot;? Is an 8-bit program or computer somehow unable to ever represent or calculate with numbers higher than 255?<p>What&#x27;s this &quot;P=NP&quot; problem and why are people so obsessed with it?<p>If computers are deterministic, how can they do something random or unpredictable, like having a game be different every time you play it?<p>D. E. Knuth has been writing a huge book about programming for decades, which people find very deep and impressive, but which very few people have read or find a practical need to consult very often. Why is this book so prestigious if so few people make practical use of it? What kind of knowledge is contained in it? How are people able to become programmers and accomplish things without mastering very much of that knowledge?<p>What is data compression? How does it work?<p>How does a device like a laptop or a phone get software updates? Who makes those updates? How does the device find the updates and know that they are genuine?<p>What&#x27;s the difference between the World Wide Web and the Internet? Who runs the Internet?<p>What&#x27;s a chip? Who designs them? How are they made? What do they do?<p>What are &quot;analog&quot; and &quot;digital&quot;? What&#x27;s meant by converting between them? How does that happen?<p>Why do people say that analog copies accumulate errors, but digital copies don&#x27;t?<p>How does a computer represent images?<p>How does a computer represent video?<p>How does a computer represent sounds?<p>What is &quot;user space&quot;?<p>What is a &quot;buffer&quot; or &quot;buffering&quot;? How is that related to video streaming? How is it related to &quot;buffer overflows&quot;?<p>What is &quot;Turing completeness&quot;? Why do some people describe it as either good or bad? How is it related to the Turing machine?<p>Stretch goals! What are the Church-Turing thesis and the Curry-Howard isomorphism?