Reputation
13,171
Top tag
Next privilege 15,000 Rep.
Protect questions
Badges
1 31 62
Newest
 Nice Answer
Impact
~465k people reached

Jun
24
awarded  Nice Answer
Apr
27
comment Is it always a good idea to divide large classes into smaller ones?
What do you mean by "too many objects"? Do you have any objective standard for that judgement?
Apr
24
comment Why are floating point numbers used often in Science/Engineering?
@MichaelGrünewald, What you say is certainly true, but I think primarily of interest to mathematicians and their fellow travelers. The subtext of the original question is that many work-a-day programmers find floating point arithmetic baffling. I suspect this is because they mostly work with computations that can be made with perfect precision using integers from a finite range (think bookkeeping and inventory). Floating point arithmetic is confusing for them because they don't appreciate that they've entered a problem domain where perfect precision is impossible.
Apr
24
comment Why are floating point numbers used often in Science/Engineering?
@PaulChernoch, sure, but there is a performance cost to that. Nobody is going to re-write their finite element modeling package or their machine learning library to use a continued fraction representation or even arbitrary precision rationals because they can't afford the performance penalty. As I said in my answer, scientific computing is a trade-off among precision, range, and speed.
Apr
24
answered Is this a good game plan to become a fluent Java developer?
Mar
22
comment Where and when does firmware of a device run?
Firmware is a general category of storage. It just means data or code that is stored in a medium that is seldom changed. Most commonly its stored on a ROM (read only memory) chip. BIOS is a specific example of firmware: a ROM chip on the motherboard of a personal computer which contains a library of utility subroutines. You can see a typical list of the routines here: en.wikipedia.org/wiki/BIOS_interrupt_call. But it's just a memory chip, and the CPU has to do the actual processing.
Mar
21
comment Do bare computer systems (without OS installed) use (executable) files?
@ScottWhitlock, different kinds of memory run at different speeds. ROM is generally slow compared to dynamic RAM. If you are going to be referring to the contents of ROM a lot it makes sense to pay the one time cost of copying it into RAM.
Mar
21
comment Where and when does firmware of a device run?
I wonder if you are being confused by an idiomatic use of the word 'run'. The BIOS is just a static block of memory. It is not itself a processor. When we say the BIOS is running, what we really mean is that the CPU is running code that it loaded from the BIOS.
Mar
21
comment Where and when does firmware of a device run?
It's not either/or. The BIOS is used at startup to get the boot program loaded. But, after the boot program is up and running, it can call subroutines stored in the BIOS for basic input output operations. For example, if the OS wants to check if a key has been pressed, it can call a subroutine stored in the BIOS that does just that. Or it may not. It may turn out that the key press read routine in the BIOS has a bug, or is inefficient, and the OS or other host program will have its own routine for the same purpose. Really, the BIOS is just a library of utility code.
Mar
21
revised Where and when does firmware of a device run?
added 12 characters in body
Mar
21
revised Where and when does firmware of a device run?
added 1 character in body
Mar
21
revised Where and when does firmware of a device run?
added 1 character in body
Mar
21
revised Where and when does firmware of a device run?
deleted 9 characters in body
Mar
21
answered Where and when does firmware of a device run?
Mar
15
comment Do bare computer systems (without OS installed) use (executable) files?
@JamesSnell, I think we're edging into hair splitting. I think you'll find that catagorizing the code in the classic PC BIOS as an operating system is a minority viewpoint. Most folks would say a motherboard with a BIOS in ROM was bare hardware. Heck, back in the 80s many knowledgeable people wouldn't even categorize MS-DOS as an operating system, since it left so much of the management of the system up to the application programmer.
Mar
15
comment Do bare computer systems (without OS installed) use (executable) files?
@JamesSnell while technically true that's misleading becauses the typical motherboard is set up to start executing at a fixed address in the BIOS when the power is turned on. The code in the BIOS is used to then used to figure out which device is supposed to contain the bootstrap program, then loads a block of data from that device into main memory and transfer execution to that block. Older BIOS chips had no code to support file systems, but did have code to read raw sectors from the HD. More modern systems using UEFI do contain code supporting some basic file system operations.
Mar
15
comment Do bare computer systems (without OS installed) use (executable) files?
@Tim, and how is the beginner going to get his machine language program to run on the computer?
Mar
15
comment Do bare computer systems (without OS installed) use (executable) files?
It may be worth noting that many current computers use UEFI, which is really just a more sophisticated BIOS. UEFI does have some very basic support for reading and writing files in a few common formats, but it doesn't fully implement a filesystem. This article on UEFI may be helpful.
Mar
15
comment Do bare computer systems (without OS installed) use (executable) files?
Can you provide an example of what you consider to be a user program stored on a bare computer?
Mar
11
comment What level of a computer system does firmware run on?
@Tim or neither, sometimes firmware may contain data. For example the BIOS in your PC probably contains the bitmaps for the font used for basic console output.