PDF Digital Logic For Computing 1st Edition John Seiffertt (Auth.) Download
PDF Digital Logic For Computing 1st Edition John Seiffertt (Auth.) Download
com
https://textbookfull.com/product/digital-logic-
for-computing-1st-edition-john-seiffertt-auth/
https://textbookfull.com/product/sets-logic-and-maths-for-
computing-3rd-edition-makinson-d/
textbookfull.com
https://textbookfull.com/product/logic-and-algebraic-structures-in-
quantum-computing-1st-edition-jennifer-chubb/
textbookfull.com
https://textbookfull.com/product/evolution-the-logic-of-biology-1st-
edition-john-s-torday/
textbookfull.com
https://textbookfull.com/product/the-impact-of-smart-feature-phones-
on-development-internet-literacy-and-digital-skills-jeffrey-james/
textbookfull.com
Tangible Interactive Systems Grasping the Real World with
Computers 1st Edition Guy André Boy (Auth.)
https://textbookfull.com/product/tangible-interactive-systems-
grasping-the-real-world-with-computers-1st-edition-guy-andre-boy-auth/
textbookfull.com
https://textbookfull.com/product/the-geology-of-the-belingwe-
greenstone-belt-zimbabwe-a-study-of-archaean-continental-crust-first-
edition-bickle/
textbookfull.com
https://textbookfull.com/product/coherence-and-divergence-in-services-
trade-law-rhea-tamara-hoffmann/
textbookfull.com
https://textbookfull.com/product/carbohydrate-chemistry-for-food-
scientists-third-edtion-edition-bemiller-2/
textbookfull.com
Digital Logic
for Computing
Digital Logic for Computing
John Seiffertt
v
vi Preface
Chapter 14—Counters
The state machine design process, core to the use of sequential networks, is
introduced in this chapter in the context of building counters. Many kinds of
counters are presented and their use in datapath design and signal generation is
discussed. As counters are of critical importance in digital design, and the state
machine design process is good to learn in its simplified form presented here first,
this is a highly recommended chapter.
Chapter 15—Datapaths
This is an important design chapter. The study of datapaths brings together all
the components from previous chapters and ties them into the algorithm concepts at
the core of the text. A successful study of this chapter will help the reader to learn to
take specifications, optimally lay out the design using digital elements, and mini-
mize the required signals for maximum efficiency.
Chapter 16—Basic Computer Datapath
A combination of sorts of Chaps. 9 and 15, in this chapter we discuss how to
construct a datapath of particular importance: that of an actual digital electronic
computer. Of definite interest to computer scientists and computer engineers, even
electrical engineers may enjoy seeing this key specialized application of digital
circuitry.
Chapter 17—State Machines
This is one of the most important chapters. No study of digital design is complete
without full coverage of the design and application of state machines. We begin
with a generalized state machine partitioned into next state logic, output logic, and
state memory. This chapter then develops state diagram, state tables, and
implementations using various flip-flops. Mealy and Moore machines are covered.
Chapter 18—Datapath Controllers
Extending the initial discussion of state machines from Chap. 17, this chapter
looks at their use specifically in conjunction with the datapaths covered in Chap. 15.
Partitioning large digital systems into state machine controller and datapath sec-
tions is common, and through detailed examples this chapter walks through the
lengthy design process. The climax of the text in a way, the design of datapath
controllers brings together everything previously studied. The student who success-
fully works through this chapter has obtained a strong intro-level knowledge of
digital design and is well-positioned for more advanced study in the field.
Chapter 19—State Machine Theory and Optimization
State reduction and assignment are covered in this chapter, and those are
reasonably standard in texts of this kind. This chapter begins, however, with a
discussion of formal languages and automata. These are topics typically reserved
for computer science theory courses, and they are included here to emphasize the
text’s unique focus on computing. The relationship between theoretical models of
computation and their applied counterparts the student has been construction in
previous chapters is made clear. Not intended even as a primer in automata theory,
Preface ix
the goal here is to give just a brief morsel to entice further thinking on the matter.
Too often, the science and engineering sides of the field are kept very far apart from
one another, and this chapter, by drawing parallels between them based on material
relevant to both and covered previously in the text, is an attempt to bridge this gap.
It is certainly not going to serve as a compete study of these topics, but the hope is
that some philosophically inclined readers may see these ideas here for the first time
and be motivated to explore them further.
Chapter 20—Instruction Processor Design
The text ends with a full-design case study of an electronic digital computer. We
take a pedagogical approach here in repeating some concepts from earlier chapters,
intentionally using slightly different language and notation, so the student can see
them really coming together in a solid whole. The idea is that if you try to read this
chapter first, it should feel overwhelming. But, if read after careful study of the rest
of the text, the successful student should be nodding along and say “Yes, I have
this!” as the actual computer is designed from the instruction set on up. The
exercises continue the design process and, if completed, the reader will have
finished the study of digital logic for computing by actually sketching the details
of a functional instruction processor. We feel this chapter is a unique feature of this
text and encourage students to take advantage of it.
Acknowledgments
This work is the result of more than 5 years of teaching digital logic at the Missouri
University of Science and Technology. I thank most of all the fine students of that
great institution whose questions, comments, and feedback shaped my course and
formed the bulk of this text. I am also grateful for the support provided by my
colleagues, in particular Joe Stanley and Donald Wunsch, who taught alongside me
and motivated me to increase my teaching ability both in the classroom and in the
preparation of this manuscript. Many excellent problem types and modes of expla-
nation found in this text are due to their insights. I also want to thank my current
department at Truman State University for their encouragement as I completed
this text.
xi
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Contents
xiii
xiv Contents
6 Logic Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Programmable Logic Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
XOR, NAND, and NOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Bitwise Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
CMOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Electronic Properties of Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
7 Unsigned Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Unsigned Binary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Full Adder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
High-Speed Adders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Subtraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Division . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Fractions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Hexadecimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8 Signed Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Sign-Magnitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Two’s Complement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Building an Adder/Subtractor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Sign Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Signed Multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Ten’s Complement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
9 Other Digital Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Binary Coded Decimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Decimal Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Gray Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Alphanumeric Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Fixed Point Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Floating-Point Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Designing an Encoding: Days of the Year . . . . . . . . . . . . . . . . . . . . . 131
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
10 Encoding Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Instructions and Datapaths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Variables and Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Conditionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Digital Representation of Instructions . . . . . . . . . . . . . . . . . . . . . . . . 143
Hex Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Contents xv
Status signals
Control Datapath
Unit
Control signals
Digital
We can physically compute with analog values in a number of ways. We can pour
water from two buckets into a third: the water now present represents the sum of the
previous two values. We can attach two wires together and see the total voltage
being the sum of the voltages of each. While it may seem ideal to compute in this
fashion because we can represent any number and perform calculations to arbitrary
precisions, what happens in practice is that we lose tiny bits here and there. A few
drops of water fall from a bucket and the wire degrades a bit of the voltage.
Digital 3
Low
0
D1 D2
All together, this interference, this noise, makes precise computation difficult. It is
for this reason that we consider digital systems in this book.
The word digital derives from the Latin digitum, which means finger. It was
originally used to mean ten: this is why we have digits in our base-10 number
system. In fact, early precursors to modern computers such as Charles Baggage’s
Difference Engine, were digital in this sense: they operated mechanically using
base-10 numbers. We’re going to broaden the sense of the word and refer to a
digital system as one whose values are digitized, that is, whose values are broken
into discrete chunks rather than being capable of representing every possible
number.
Due to the limitations of our underlying technologies, we’re going to digitize to
the maximum extent: we will use only two values within a given range of possible
values. Consider the graph in Fig. 1.2.
We divide our infinity of values from 0 to 5 into two and we call them High and
Low. Device D1 is transmitting a signal to device D2. In order to communicate
effectively, D1 must be assured that when it sends a signal that D2 will be able to
properly interpret it as either High or Low. We see that this system has some
resistance to noise: a signal of 4.5, for example, subject to a shock of .75 might end
up transmitting as 3.75. But that is still OK because it’s in the High range and D2
still interprets it as a High signal. If we were pouring 4.5 ounces of water from one
cup to another and lost .75 ounces along the way we’d have a wildly inaccurate
sum. But in a digital system we’re fine and the computation is not affected by the
noise.
But, what if we transmit a High signal that’s less strong, say 3.0? It’s still within
the High range so our device D1 is satisfied. What if it is hit with a disruption of .75?
Now it’s transmitting a 2.25 signal which D2 interprets as being in the Low range.
We now have a breakdown in communication and our digital system won’t func-
tion. To fix this we need to force the High signals to be really high and the low
signals to be really low. We need to ensure separation between our two values.
Consider the graph shown in Fig. 1.3. Now instead of breaking the entire range
of values 0 through 5 into two categories, we have that High signals are in the range
VH to 5 and low signals in the range 0 to VL while any signal in the range VL to VH
is in the forbidden zone and is therefore not interpreted. Provided we can get VH
close to 5 and VL close to 0, we’ve done a good job here of not confusing High and
Low signals. If we have our 3.0 signal with the .75 shock, so long as 2.25 > VL we
4 1 The Digital Electronic Computer
Forbidden Zone
VL
Low
0
D1 D2
D1 D2
now can be confident that D2 will not misinterpret our noisy transmission. Instead,
D2 picks up a signal in the forbidden zone. While that’s not ideal, it’s a better case
result than D2 not even being aware a problem exists.
But, we’re not done! We can improve yet upon this configuration. We still have
an issue if we’re sending a signal that is close to VH or VL because just a small
amount of noise can disrupt it and send it into the forbidden zone. What we’d like is
for D2 to recognize signals close to these breakpoints that fall just a little bit into the
forbidden zone. This is demonstrated in Fig. 1.4.
If we make the forbidden zone smaller for the input values then the receiving
device can better understand what the transmitting device is sending even through a
bit of noise. We can now talk about VOH and VOL as the output high and low value
cutoffs and VIH and VIL as the input high and low value cutoffs. The high and low
noise margins NMH and NML can be defined:
NMH ¼ V OH V IH
NML ¼ V IL V OL
It’s not quite as simple to digitize our systems as we may think at first. Just
because the devices “are all 1’s and 0’s” doesn’t mean their internals are easy to
design. There are a lot of moving pieces here.
We speak of Logic Families as being devices that can work together. That is,
digital devices within a logic family have their high and low value cutoffs aligned
so that they are always assured accurate transmission. We can also look into
Electronic 5
intra-family communication. Consider Table 1.1 which gives the details for two
logic families, TTL and CMOS.
We can ask whether a TTL device can transmit to a CMOS device? The VOL of
TTL is .40 which is less than the VIL of CMOS at 1.15 Therefore, we have a NML
in this situation of 1.15–0.40 ¼ 0.85. Looking at the high side, however, we see that
TTL’s VOH is 2.40 while CMOS’s VIH is 3.15. This means the TTL device can
transmit any value greater than 2.40, say 2.75, while the CMOS device won’t
recognize any input less than 3.15 as a high signal. Therefore, communication
fails in this case. A TTL device cannot transmit reliably to a CMOS device.
What about the opposite case? Can a CMOS device transmit to TTL? Well, on
the Low side the CMOS device has a VOL of 0.33 which is less than TTL’s VIL of
0.80 for a NML 0f 0.800.33 ¼ 0.47 which is positive and therefore compatible.
On the High side, we have CMOS with a VOH of 3.84 and TTL with a VIH of 2.00.
This gives us a NMH of 3.842.00 ¼ 1.84 which is fine. Therefore, we can indeed
have a CMOS device transmit to a TTL device.
Be sure to carefully go through these computations so you have the idea of noise
margins, High, and Low signals clear. The entirety of digital design rests upon this
foundation, so it’s a good idea to get to where it makes sense to you.
We want our digital devices to be able to effectively communicate. That is, when
a device sends a logic-1 (high voltage) we want the receiving device to read a logic-
1 and when a device sends a logic-0 (low voltage) we want the receiving device to
read a logic-0.
To this end, devices have tolerances for the voltage levels they interpret as logic-
1 and logic-0 when both sending and receiving signals. In order to build devices that
are as resistant to noise as possible, we have different tolerances for output and
input signals. The values VOH and VOL tell us the cutoff voltages for high and low
output and the values VIH and VIL tell us the cutoff voltages for high and low inputs.
A device can drive another if its VOH is less than the VIH of the receiving device
and if its VOH is less than the VIH of the receiver.
A device can receive signals from another if its VIH is less than the VOH of the
driver and if its VIL is greater than the VOL of the driver.
If devices of two families can both drive and receive signals from each other,
then the families are said to be compatible.
Electronic
n n
SiO2
strong 0 strong 1
degraded 1 degraded 0
signal as our Low digital value and allowing it to pass as our High digital value.
In particular, the MOSFET: metal oxide semiconductor field effect transistor.
In Fig. 1.5 we see a diagram outlining its construction.
The electric signal moves from the source side out the drain side if the voltage
on the gate is high enough. Chemically, to effect this transition we use two
materials, called n and p, each doped with specific metals (n material is doped
with group II metals and p with group III metals.) We end up with two kinds of
MOSFETS, depending on where we use the n and p materials. In the diagram, we
have an nFET device. If we swap the n and p materials, we would have a pFET
device.
It turns out that nFET and pFET devices have different characteristics. Transis-
tors in the nFET category transmit a Low signal very well but have a hard time
passing a High signal. They end up pulling the High voltage lower, and sometimes
this is more noise than the device can handle and we end up in the forbidden zone.
The pFET devices are the opposite: they are just fine for passing High voltage
signals but pull Low voltages up and make them harder to read.
In technical language, we say the nFET passes a degraded 1 and a strong
0 while the pFET passes a degraded 0 and a strong 1. (In later chapter’s we’ll call
the High voltage a logic-1 and the Low voltage a logic-0.)
The diagram in Fig. 1.6 shows the circuit symbol we use for nFETs and pFETS
as well as summarizes the characteristics relevant for our digital design needs.
In Chap. 6, we’ll get into great detail about how we use these transistors to build
the components necessary to implementing algorithms with our digital logic
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Computer 7
elements. For this introductory chapter, it’s sufficient to leave off here with the idea
of underlying technology merely described at a low level.
Computer
In this book we will study the design, operation, and capabilities of the digital
electronic computer, the most widely used commercial embodiment of the idea of
an instruction processor.
But what do we mean by the word computer? Students on the first day of class
often respond to the question “What is a computer?” with a variation on “something
that computes!” The natural follow-up is then “ok, so what is a computation?” That
one is harder to answer. It’s common for non-CS people to think of computation as
“coming up with fancy ways to calculate the square root of a number” and other
related numerical investigations. And while we certainly want to include the
exploration of number within our understanding of computation, we don’t want to
commit to that being the end of the story. Because, more generally, and as stated in
the beginnings of the field of computing science by Alan Turing and other pioneers,
when we think of computations in a true computer science sense we mean not the
processing of numbers only but the processing of language taken more generally.
That’s right! Computations are considered the processing of language! And, this
dovetails nicely with the approach taken in looking at digital logic from the vantage
point of algorithms broadly understood. Because, at the end of the day, some of the
most important things we can say about algorithms involve their expressibilty as
language. The code we write to configure instruction processors to do great things
is, after all, language, and we consider the computer itself as a digital electronic
circuit that responds to this language.
So, the language, more specifically the idea of programmability which involves
the processing of not just one sequence from a language but rather the ability to
handle any expression of a particular language, is central to our understanding of
what a computer is. While we may take ancient devices such as the astrolabe or
abacus as computer in the sense that they do indeed take inputs and produce outputs
based on some internal mechanized computation, they are not programmable so
they do not qualify as a computer.
We can go a step further and look at digital electronic circuits, such as those in a
simple hand calculator, that may excel at computations and, as we’ll study as we
proceed in this text, are indeed the implementation of algorithms expressed in
language. But, these are also not computers because they are not programmable!
You cannot change what they do by writing a new algorithm. These are called
application specific integrated circuits (ASICS) and are the focus of electrical
engineers when they study digital design principles. We’ll certainly talk about
them, and Chap. 18 in particular develops these in great detail, but the text caps
with a chapter on the design of an instruction processor and throughout we are
concerned with the relationship between digital logic and programmability.
8 1 The Digital Electronic Computer
Exercises
Answer each of the following questions YES or NO and, if NO, give a reason.
(a) Can a TTL device drive a CMOS device?
(b) Can a TTL device drive a LVTTL device?
(c) Can a TTL device drive a LVCMOS device?
(d) Can a CMOS device drive a TTL device?
(e) Can a CMOS device drive a LVTTL device?
(f) Can a CMOS device drive a LVCMOS device?
(g) Can a LVTTL device drive a TTL device?
(h) Can a LVTTL device drive a CMOS device?
(i) Can a LVTTL device drive a LVCMOS device?
(j) Can a LVCMOS device drive a TTL device?
(k) Can a LVCMOS device drive a CMOS device?
(l) Can a LVCMOS device drive a LVTTL device?
(m) What does “LV” stand for in the LVTTL and LVCMOS families?
(a) Can a device from family A drive a device from family B? Why or why
not?
(b) Can a device from family B drive a device from family A? Why or why
not?
1.6 Suppose a logic family has a high noise margin of NMH ¼ .3. If VIH ¼ 4.5, what
must VOH be?
1.7 There are many ways to design a device which will sequentially execute
instructions. The mathematician John von Neumann was a pioneer in the
development of digital electronic computers, consulting on the construction
of a computer called the EDVAC in the 1940’s. His early writings on computer
design and organization are still relevant today, as most computers are built
using the basic principles he laid out. Research the concept of von Neumann
architecture and write a few sentences about its features.
1.8 Is a sun dial a computer? It takes an input, sunlight, and computes an output,
time of day? So, is it a computer? This is a bit of a jokey question, but also
highlights the importance of the key elements we want in our definition of a
computer. We’re not particularly interested in exploring what a pole stuck in
the ground can do.
Chapter 2
Boolean Algebra
We need a language to discuss the design of the computer. Once upon a time,
humans looked to the stars and developed what we know as Calculus to describe
their motion. It turned out that algebra and calculus based on the real numbers work
quite well to describe systems involving energy, motion, time, and space. The real
numbers are a useful model for those quantities. Within our digital computer,
however, we only have access to two values, logic-1 and logic-0. We don’t have
an infinity of values over which our functions may vary. Therefore, the early
pioneers of computing found themselves faced with a dilemma. They could not
use the classical mathematics they knew and loved; rather, they faced the task of
developing a new mathematics capable of working with only two values.
These engineers were not amused. Developing new mathematics is for mathe-
maticians, they reasoned. So, they did the next best thing. They looked around at
what the mathematicians were doing and instead of crafting a new computer design
mathematics from scratch they happened upon something close to what they
wanted, and they stole it. (OK, they repurposed it.)
It turned out that a nineteenth century schoolteacher and philosopher named
George Boole had worked out a mathematics for how people (or at least how
mathematicians) reasoned through formal problems. Instead of representing quan-
tities such as velocity and mass and curvature, the variables in Boole’s mathematics
represented English statements. Instead of addition, subtraction, and multiplication,
Boole’s mathematics combined variables in the logical operations of and, or, and
not. So far, this isn’t really what the computer engineers were looking for, but the
last key piece of what Boole had developed sealed the deal: all the variables took on
only one of two values! That was it! The engineers needed a two-valued mathe-
matics, and Boole had one. Sure, Boole called the values True and False and the
engineers wanted to call them logic-1 and logic-0, but it was close enough (engi-
neers are all about “close enough”.)
So, here we are: Boolean Algebra is the name given to the mathematics that is
used to describe the behavior of all digital systems, computers included. Let’s check
it out.
To get a sense of how Boolean Algebra differs from the algebra and calculus you’re
already familiar with, let’s consider an example. Suppose we have a cabin by a river
and staff it with a robotic sentry to keep out bears and ewoks. The house is equipped
with window, door, and chimney sensors which detect intrusion as well as an
infrared sensor which can determine size, and the sentry can sound a local alarm
or take action against the intruder.
The schematic of the setup can be seen in Fig. 2.1.
We call the door sensor D, the chimney sensor C, the window sensors w0, w1, w2,
and w3 (in the diagram w3 is overlooking the river), and the infrared sensor we’ll
call R. Let’s give names to the sentry’s actions, too: A will be sound the alarm and E
will be to engage the intruder.
Now, let’s see how Boolean Algebra can help us specify how this system works.
First, we would like the sentry to sound an alarm if any of the door or window
sensors activate. We can write this as an equation:
A ¼ D or w0 or w1 or w2 or w3
W0 W1
W2
Fig. 2.1 Boolean Algebra Schematic: D is the door sensor, W0, W1, W2 are the window sensors,
R is the infrared sensor, and C is the chimney sensor
Random documents with unrelated
content Scribd suggests to you:
“Ha!” said the trooper. “Even a little armor is a good thing, if rightly
placed.”
The horseshoe was “a detail.”
CROQUETTES
GENERAL DIRECTIONS
(Which the housewife is particularly requested to read)
Two things are essential to the excellence of croquettes. The mixture
composing them must not be too stiff. The fat in which they are
cooked must be boiling when they go in, and deep enough to float
them. If these conditions are neglected, you will have a pasty, sticky
compound, soaked with grease and misshapen, perhaps scorched on
the under side. The hot fat should form a crust instantly which
prevents the fat from touching the interior of the croquette.
Always make out croquettes at least a couple of hours before they
are to be cooked; roll in egg, then in fine crumbs, or in cracker-dust;
arrange upon a floured dish, not touching one another, and leave
upon ice, or in a very cold place to stiffen.
Oyster croquettes
Cook twenty-five oysters in their liquor until they just begin to ruffle,
remove from the fire, drain (reserving half a cupful of the liquor),
and chop fine. Stir together over the fire two tablespoonfuls of flour
and two of butter and pour on them a half-cupful of cream with a
pinch of soda in it, and the half-cupful of oyster liquor. When beaten
to a smooth sauce add slowly the beaten yolk of two eggs, then the
chopped oysters, salt and pepper and a pinch of grated nutmeg.
Remove at once from the fire and set aside to cool. When very cold
form into croquettes.
Lobster croquettes
(Contributed)
Two cupfuls of minced lobster seasoned well with paprika, salt and a
little mace. One-fourth the quantity of bread-crumbs, i. e. about half
a cupful. Four tablespoonfuls of cream, heated (with a pinch of
soda), and thickened with a teaspoonful of butter rolled in flour.
Make a thick paste of the mixture; let it get stiff and cold; make into
croquettes, roll in egg and cracker-crumbs; set on the ice for an
hour; roll again in cracker-dust and fry in deep, hot cottolene or
other fat, which has been heated slowly. Drain, garnish with lemon
and parsley and serve.
Chicken croquettes
Turkey croquettes
Make in the same way, but mince more finely, as the meat is firmer
and harder.
Veal croquettes
Mix together a cupful, each, of cold cooked veal and of cold boiled
spaghetti, both minced fine. Season with salt, paprika and onion
juice. Stir into a cupful of drawn butter, well thickened; cook
together in a saucepan until smoking hot, when add the yolk of a
raw egg and a tablespoonful of Parmesan cheese (powdered). Form
into croquettes, dip into beaten egg, roll in breadcrumbs and fry in
smoking hot cottolene or other fat, or dripping until brown. Serve
with tomato sauce.
Rice croquettes
Beat an egg light and stir it into a cupful of boiled rice; add a
teaspoonful, each, of sugar and melted butter, salt to taste, add
enough cream to form the mixture into croquettes of the right
consistency. Dip each croquette into beaten egg, then in cracker-
dust and set all for two hours in a cold place before frying in boiling
cottolene, or other fat, to a golden brown.
Croquettes of brains
Mince enough cold veal to make a cupful when chopped; mix with it
half as much cold boiled ham and one-fourth as much fine crumbs.
Rub the yolk of a hard-boiled egg through a colander or vegetable
press, and add to the mixture. Season with pepper and onion juice
and moisten with thickened gravy or with drawn butter. Lastly, whip
in a raw egg to bind the mixture and make into croquettes. Roll in
egg and in crumbs, set aside to form and stiffen, and fry.
Potato croquettes
Work to a paste two cupfuls of mashed potatoes and a tablespoonful
of melted butter. Season with salt and pepper and beat light with a
raw egg. Form into balls or croquettes; roll in egg and then in
cracker-dust; let them stand on ice until stiff and fry in deep, boiling
cottolene or other fat. Drain off every drop of fat and serve hot.
Hominy croquettes
One cupful of cold cooked fish picked to pieces with a fork, and one-
third the quantity of mashed potato worked to a stiff cream with a
little drawn butter and seasoned with pepper, salt and a dash of
Worcestershire sauce. Make into croquettes; roll in egg, then in
cracker-crumbs; let them get cold and firm and fry in deep, hot
cottolene or other fat.
Beef croquettes
Celery croquettes
Oyster-plant croquettes
(Contributed)
Boil, mash and season the oyster-plant, mold into shapes, sprinkle
with bread-crumbs, dip in egg and again in crumbs and fry in hot
fat.
Sweetbread croquettes
(Contributed)
Take four sweetbreads, removing pipes and membranes soak for an
hour in cold salted water. Plunge into boiling salted water to which
has been added a tablespoonful of vinegar; cook twenty minutes.
Drop again into cold water to harden. Chop them very fine and
season with salt and pepper and a teaspoonful of grated onion. Add
the beaten yolks of three eggs, a tablespoonful of butter, one-half
cupful of cream and enough fine bread-crumbs to make soft enough
to roll into balls. Dip in egg and then in bread-crumbs and fry in hot
fat to a nice brown. Take up and drain on brown paper. Serve hot
with sliced lemon.
Mushroom croquettes
Mince fresh mushrooms fine with a keen blade; season with pepper
and salt; add a tablespoonful of fine crumbs to each cupful of the
chopped mushrooms; work in a little melted butter and the beaten
yolk of an egg. When the mixture is cold form into croquettes and
set on the ice until you are ready to cook them. Roll in egg and
cracker crumbs and fry in deep fat.
WITH THE CASSEROLE
The French name “casserole” has a certain amount of terror for the
American housewife. The foreign word startles her and awakens
visions of cooking as done by a Parisian chef, or by one who has
made the culinary art his profession. She, a plain, every-day
housekeeper, would not dare aspire to the use of a casserole.
And yet the casserole itself is no more appalling than a saucepan. It
is simply a covered dish, made of fireproof pottery, which will stand
the heat of the oven or the top of the range. And the dainty cooked
in this dish is “casserole” of chicken, rice, etc., as the case may be.
Like many another object of dread this, when once known, is
converted into a friend.
Casserole of chicken
Clean and joint a tender spring chicken. Put into a frying-pan three
tablespoonfuls of butter and fry in this a small onion and a carrot,
both cut into tiny dice. When these vegetables are lightly browned,
turn into the casserole, add to them two cupfuls of clear soup stock,
in which three bay leaves and a little thyme have been boiled and
then removed. In this consommé lay the jointed chicken, put the
closely-fitting cover on the casserole and set it in a steady oven. It
should cook for an hour. At the end of this time stir into the chicken
a dessertspoonful of tomato catsup. Recover and cook for half an
hour longer. Then add two dozen small French mushrooms which
have been previously stewed for ten minutes, lastly, a glass of
sherry. Season the whole to taste with pepper and salt and leave
uncovered in the oven long enough for the chicken to brown. Fresh
mushrooms are, of course, better than canned when you can get
them.
Casserole of rice and liver
Trim the chops neatly, removing every bit of fat and skin. In the
bottom of the casserole put a layer of pared and shredded tomatoes;
sprinkle with salt, pepper, a little sugar and a teaspoonful of onion
juice. Lay three or four chops upon the tomatoes; season them with
salt and pepper; arrange about them small pellets of parboiled
potato, cut with a gouge, after the manner of Parisian potatoes,—
also a dozen or so champignons (canned mushrooms). Now, more
tomato, seasoned as before, then more chops, potatoes and
mushrooms, until all are used up in this order. The upper layer
should be tomatoes. Pour in a generous cupful of stock—bouillon,
consommé, mutton broth, or whatever you have; cover and cook
steadily for two hours if the casserole be large.
When the meat is tender to the trial-fork, pour off the gravy carefully
into a saucepan, thicken with browned flour; add the juice of half a
lemon, a teaspoonful of kitchen bouquet and a glass of brown
sherry. Pour back over the contents of the casserole, set in the oven
for three minutes, covered, and serve in the dish.
An elegant dish can be made of unpromising chops by following
these directions.
Select large, smooth, tart apples of good flavor and of uniform size.
Remove core with corer. Mince cold chicken fine, season with salt, a
dash of cayenne, pinch of powdered thyme, one-half cupful of
bread-crumbs, moistened with three or four teaspoonfuls of sweet
cream. Fill each apple and bake in oven. Serve hot or cold with
mayonnaise as a salad.
Creamed chicken
Carve enough meat from a cold roast chicken to make a pint when
cut into small dice. Cook together in a saucepan a tablespoonful,
each, of butter and flour; when they are blended pour upon them a
cup of white stock, and when this is thick, a cup of milk. Stir to a
smooth sauce and add the minced chicken. Season to taste; cook
until the meat is very hot and serve.
Cut cold boiled or roast chicken into small dice of uniform size, and
into half-inch lengths half the quantity of cold, cooked macaroni.
Make a good white sauce, season highly with paprika, salt and a
suspicion of onion juice. Beat two eggs light and stir into them four
tablespoonfuls of cream, heated, with a pinch of soda. Mix well with
the chicken and spaghetti; put over the fire in a frying-pan, or broad
saucepan, and stir and toss until smoking hot. Serve in a deep dish.
Chop the meat fine and to two cupfuls add a tablespoonful of butter,
two tablespoonfuls of bread-crumbs, half a cupful of boiling water,
salt and pepper to taste. Put these all into a saucepan and stir while
heating. Lastly, put in two raw eggs, beaten light, and take from the
fire. Fill baking cups two-thirds full of the mixture, set in a pan of
boiling water and bake about twenty-five minutes. Turn out carefully
into a heated dish and pour white sauce around them.
Philadelphia scrapple
(Contributed)
Take a cleaned pig’s head and boil until the flesh slips easily from the
bones. Remove all the bones and chop fine. Set the liquor in which
the meat was boiled aside until cold, take the cake of fat from the
surface and return the liquor to the fire. When it boils, put in the
chopped meat and season well with pepper and salt. Let it boil again
and thicken with corn-meal as you would in making ordinary corn-
meal mush, by letting it slip slowly through the fingers to prevent
lumps.
Cook an hour, stirring constantly at first, afterward putting back on
the range in a position to boil gently. When done, pour into a long,
spare pan, not too deep, and mold. In cold weather this can be kept
several weeks. Slice and sauté in butter or dripping.
CHEESE DISHES FOR LUNCHEON
A fondu of cheese
Grate cheese and crush broken and dried bread and crusts into fine
crumbs. There should be two cupfuls of these to one of cheese. Wet
the crumbs with two cupfuls of milk in which has been dissolved a
bit of soda no larger than a Lima bean. Beat two eggs light, whites
and yolks apart; whip the yolks into the soaked crumbs with a
tablespoonful of melted butter. Season with salt and a dust of
cayenne, add the frothed whites, deftly and rapidly; bake in a
greased pudding dish in a brisk oven, keeping the dish covered until
the fondu has puffed high and is crusty on top. Then brown lightly
and serve at once, as it soon falls. Pass crackers and pickles with it.
Boil a cupful of rice tender; drain dry in a hot colander; set at the
side of the range for ten minutes. Mix, then, with two beaten eggs, a
tablespoonful of butter, pepper and salt to taste. Line a well-greased
dish with this paste, leaving a hollow in the middle. The walls of rice
should be about an inch thick. Set in the hot oven for five minutes.
Have ready a cupful of hot milk; stir into it a tablespoonful of butter
rolled in flour, half a cupful of grated cheese, a generous pinch of
paprika, with salt to taste, and a pinch of baking-soda. Lastly, and
quickly, add a beaten egg. Pour this mixture into the hollowed rice,
sift fine crumbs over it, and set covered in the oven. At the end of
ten minutes uncover and brown slightly. Serve at once, as it falls into
heaviness with standing.
Cheese rice
Boil a cupful of rice in two quarts of water. When tender, turn into a
colander, drain, shake hard and stand at the side of the range ten
minutes to dry. Now stir into the rice, first, a tablespoonful of melted
butter, then four tablespoonfuls of Parmesan cheese and a dash of
cayenne pepper. Serve very hot.
Cut the stem-end from large tomatoes, and with a small spoon
scoop out the insides. To two tablespoonfuls of the tomato pulp add
a teaspoonful of bread-crumbs and the same quantity of cheese
crumbled into bits. Season to taste and return this mixture to the
tomatoes. Replace the stem-ends and bake the tomatoes for twenty
minutes in a roasting-pan. Transfer to a hot platter and serve.
Cheese straws
Cheese puffs
Beat six eggs very light and add to them a gill of warm milk, in
which a pinch of soda has been dissolved, five tablespoonfuls of
grated cheese and a pinch, each, of paprika and salt. Butter small
timbale molds, or pâté pans, fill with the egg mixture and set in a
baking-pan of boiling water until the egg is set. Turn out carefully on
a hot platter and pour hot tomato sauce about them. Serve at once,
as they soon fall. A nice luncheon entrée.
Cheese soufflé
Cheese ramakins
Cut slices of bread very thick, pare off the crusts and press a round
cake-cutter half-way through the middle of each slice. Take out the
crumb enclosed in this circle. Butter the bread and set in the oven
until dry and crisp. Now fill the hollow in each slice with a mixture
made of a tablespoonful of butter, four tablespoonfuls of grated
cheese, a tablespoonful of cream and a little salt and pepper. Set for
five minutes in a hot oven.
Cheese biscuits
Cheese crackers
Cheese fingers
Cut puff-paste into strips as long and as wide as your middle finger,
sprinkle with a layer of cheese (grated), press upon this another
strip of pastry, sprinkle with more cheese and bake in a quick oven.
Cream cheese
To every quart of rich milk you use allow a pinch of salt and a
teaspoonful of rennet, taking care to buy that which is not flavored
in any way. When it is solid, turn into a bag and let it drip. When it is
well drained so that all the whey is taken from the curd—it may take
more than a day for this, and in that case you must change the bag
at the end of the first twelve hours—take it out, chop the curd fine,
put it into a cheese box and press two hours. Wrap in two or three
folds of tissue paper or in tinfoil, to exclude the air.
This is a good way of using cream cheese which has become a little
dry after the tinfoil has been removed.
Rub three tablespoonfuls of cream cheese to a paste with a
teaspoonful of butter; salt and pepper it and work in a tablespoonful
or two of cream, enough to make it quite soft. Set in a pan of boiling
water over the fire and stir until hot, when add a beaten egg, cook
one minute and spread upon buttered crackers.
Half a pound of soft grated cheese; one gill of ale; two eggs; one
tablespoonful of butter; one teaspoonful of lemon juice and the
same of Worcestershire sauce and half a spoonful of celery salt. A
pinch of cayenne and one of mustard.
Put a broad saucepan over the fire and melt the butter. When it
hisses stir in the cheese, then, still stirring, the dry seasoning. Have
ready the eggs beaten separately and very light, before you stir
them together in a bowl with a few swift strokes. Add three
spoonfuls of the hot mixture to these, rapidly, then pour the eggs
(now warmed by the hot cheese) into the saucepan, never letting
the spoon rest. In one minute more add the sauce and lemon juice
and put upon rounds of hot, buttered toast.
CHEESE AND EGG-ENTREES
CREAMED MACARONI IN PINEAPPLE CHEESE SHELL
STUFFED EGGS
FONDU OF CHEESE
COVERED CHEESE DISH FOR LIMBURGER, ETC.
Break macaroni into two-inch lengths and boil until tender in plenty
of salted water; then drain and blanch by pouring cold water over it.
After it has been blanched cut into pieces not over a half inch long.
Have ready a cheese-shell, one from which the cheese has been
thoroughly scooped out. These shells, which are frequently thrown
away, make a nice receptacle for serving macaroni. Stand the shell
on a piece of waxed paper and this in a baking-pan. Put two
tablespoonfuls of butter and two of flour in the saucepan, mix and
add a pint of milk, stir until boiling, mix in the cold macaroni and stir
over the fire until it is just heated through; add a teaspoonful of salt
and saltspoonful of pepper and pour the mixture into the shell; cover
with a piece of greased paper and leave in the oven fifteen minutes.
Lift the shell carefully, putting it on a round plate and send to the
table. This process imparts a most delicate cheese flavor and makes
a sightly dish. If baked too long, it will become soft and fall apart.
For that reason the macaroni must be hot when poured into the
shell. If the shell is carefully cleaned, it may be used several times.
Cut the cleaned celery stalks into inch-lengths and cook until tender
in boiling water, slightly salted. For three cupfuls of the cut celery
allow a pint of white sauce, using the water in which the celery was
cooked, with the cream, as the liquid. Turn into the shell of an Edam
cheese, cover with half a cupful of fine cracker-crumbs, mixed with
two tablespoonfuls of melted butter and let it brown in the oven.
Send around powdered cheese with this dish.
Cheese rings
(Contributed)
Prepare a dough as for cheese straws, but cut it out with a doughnut
cutter, brown slightly in a moderate oven. Draw several cheese
straws through the opening in each ring and serve with salad.
Baked cheese
(Contributed)
Dissolve three ounces of butter in a gill of hot water. Melt three
ounces each of American and Gruyère cheese. Stir all together until
creamy, then add enough sifted flour to make a stiff paste and the
beaten yolks of two eggs. Mix the whole thoroughly. Mold with two
buttered tablespoons, slip on greased paper, and when all are
molded set in a moderate oven. When slightly brown brush them
over with the whites of the eggs beaten stiff. Return to the oven for
one minute. Take up on a hot dish, dust with pepper and fill the
center with grated cheese.
Cheese cutlets
(Contributed)
To the well-beaten yolks of three eggs add one tablespoonful of
cream and one ounce of grated Parmesan cheese and season with
mace and cayenne. Beat until very light and add one tablespoonful
of Béchamel sauce. Pour into a buttered pan and steam over hot
water until firm. When cold cut in shapes with a fancy cutter, dredge
with grated cheese and fry in boiling fat to a delicate brown. Serve
at once on fried bread.
Cheese dates
Cut large dates two-thirds around lengthwise, and extract the seeds,
leaving the back of each uncut to form a hinge. Fill them with cream
cheese rubbed soft with butter, bring the sides together to hold in
the filling, and pile upon a glass dish.
They are a nice accompaniment to afternoon tea.
THE TOAST FAMILY
Toast, pure and simple
Pare the crust from thin slices of bread, cut each slice in two and
toast to a golden brown over a clear fire; butter lightly; pile together
and throw a napkin over them. The sooner they are eaten the better.
This toast is the accompaniment to scores of breakfast and luncheon
dishes.
Is especially good and goes well with oysters and certain salads.
Deviled toast
Tomato toast
Sandwiched toast
Cut bread into very thin slices and remove all the crusts. Butter
lightly, and between every two slices lay an extremely thin shaving
of chicken or cold roast veal. Press the slices of bread firmly
together, lay on a toaster and toast each to a delicate brown. Serve
at once. These are especially nice with cucumber salad.
Toasted crackers
Butter seafoam or snowflake crackers and dust with celery salt and a
little paprika. Set in the oven until very hot, then serve.
Spread crackers with anchovy paste and set in the oven until very
hot before sending to the table.
Anchovy toast
Cut thin slices of bread into rounds; toast delicately on both sides,
lay a coiled anchovy on each round and set in the oven for three
minutes to heat.
LUNCHEON VEGETABLES
Hashed potatoes, browned
Pare, wash and cut eight fine potatoes into small cubes, not more
than half an inch square. Put these over the fire with two
tablespoonfuls of minced celery and half as much grated onion. Salt
to taste, and cook until tender but not broken; drain off the water
and turn the potatoes into a buttered dish. Have ready a cupful of
hot milk, into which stir a large tablespoonful of butter rubbed into
one of flour. Do not cook them together, but add a tablespoonful of
finely-minced parsley, and pour over the potatoes. Cover and bake
fifteen minutes, then brown upon the upper grating of your oven.
Serve in the bake-dish.
The celery and onion impart a most agreeable flavor to the dish.
Potato scallop
Potato chips
Pare, slice very thin with a sharp knife and throw into ice water for
an hour. Dry between two towels, and cook until delicately colored in
deep, boiling cottolene or the best salad oil, slightly salted. Drain
perfectly dry, toss upon hot tissue paper for an instant and serve in a
deep dish lined with a napkin, which is drawn over the potatoes.
Potato strips
Prepare in the same way, after cutting into long, thin strips, the
length of the potato.
Bake large, smooth potatoes of uniform size until they yield to the
pinching fingers. Divide each carefully in half, lengthwise; scrape out
the interior, taking care not to break the skin; mash the potato with
a little hot milk and melted butter until you can beat it to a cream;
salt and pepper, beat in two tablespoonfuls of grated cheese
(Parmesan is best) for two cupfuls of potato, and return to the
waiting shells. Set in the oven until hot through and slightly
browned. Serve in the skins.
They are very good.
Potato puff
Pare, wash and grate six good-sized raw potatoes; press out the
water, add three well-beaten eggs and a heaping tablespoonful of
flour, with salt to taste. Beat well, and drop by the great spoonful in
deep, hot cottolene or other fat. Fry to a delicate brown.
Into two cupfuls of boiled and mashed sweet potatoes beat three
tablespoonfuls of melted butter, a cupful of milk and four beaten
eggs. Salt to taste, beat hard and turn into a greased pudding dish.
Bake to a golden brown.
Pea pancakes
Open a can of green peas several hours before you wish to use
them, drain in a colander and cover with cold water until you are
ready to cook them. Boil tender in water slightly salted, drain, and
while hot rub through a colander or vegetable press. Work in a
teaspoonful of butter, with pepper and salt to taste. Stir for a
minute, and let the paste get cold. Beat two eggs light and add to
the cold paste, alternately with a cupful of milk. Sift half a
teaspoonful of baking powder twice with four tablespoonfuls of flour,
and stir into the mixture.
Drop upon a soapstone griddle as you would griddle cakes. Eat while
hot, as a vegetable. Peas left over from yesterday are nice made up
in this way.
Buttered rice
This, too, is a nice “made-over entrée.” Boil rice in the usual way,
and, after draining well, press while warm into a bowl or mold. Next
day turn it out carefully upon a pie plate and set in a quick oven.
When it is hot all through draw to the door of the oven and butter
abundantly. Shut the oven door and brown lightly. Butter again and
sift a thick coating of grated cheese (Parmesan, if you have it) over
all. Leave in the oven for a few minutes to melt the cheese, and
heap irregularly with a meringue of the whites of two eggs beaten
up with a pinch of celery salt. Brown very lightly, slip a spatula under
the mold and transfer carefully to a hot platter.
It is a pretty yet a simple side dish, good and easily made.
Tomatoes farcies
Carefully peel large, firm tomatoes, and scoop out the centers. In
the hollow thus left in each tomato put a layer of minced ham. Set
the tomatoes in a bake-pan, sprinkle with salt and pepper, put a bit
of butter upon the top of each and cook for ten minutes. Then drop
upon the mince in each tomato a raw egg; dust with salt and pepper
and cook until the eggs are “set.”
Cut the tops from large, ripe tomatoes, and scoop out the insides
with a small spoon. Keep these insides for the sauce, to be used
later. Make a mince of cold roast beef or mutton, moisten it with a
rich gravy, season to taste and half fill the hollowed tomatoes with
this mixture. Set in a covered roasting-pan and bake for twenty
minutes in a steady oven. Meanwhile, strain the tomato pulp, heat it
and make of it a sauce thickened with two teaspoonfuls, each, of
flour and butter, rubbed to a paste. Season to taste. Toast rounds of
crustless bread, lay these on a platter and pour the tomato sauce
over and around them. Keep hot until the tomatoes are ready. When
these have cooked for twenty minutes remove the cover of the
roaster and drop into each half-filled tomato a raw egg. Replace the
cover and bake just long enough to “set” the eggs. Upon each round
of toast lay a stuffed tomato, sprinkle with pepper and salt and send
to the table.
Boil a cup of rice until each grain is tender and stands alone. Now
beat in gradually five whipped eggs and a cup of milk, in which have
been stirred two tablespoonfuls of grated cheese. Stir over the fire
for a minute and pour the mixture into a greased pudding dish. Bake
in a good oven for half an hour.
Cut green peppers lengthwise, removing the seeds with care, lest
they make the green shells too hot. Fill the halves with boiled rice,
into which has been stirred a tablespoonful of melted butter for a
cupful of the boiled rice, and two tablespoonfuls of grated Parmesan
cheese, with salt to taste. Mound the rice smoothly and high, and
after the pilau has cooked ten minutes in a covered pan brown
lightly. Serve hot.
Cut each pepper lengthwise into quarters and remove the seeds
carefully, lay in iced water for fifteen minutes, then drain. Cut each
quarter in half. Butter a pudding dish and put in the bottom of it a