Kirjojen hintavertailu. Mukana 11 357 427 kirjaa ja 12 kauppaa.

Kirjahaku

Etsi kirjoja tekijän nimen, kirjan nimen tai ISBN:n perusteella.

8 kirjaa tekijältä Niklaus Wirth

Grundlagen Und Techniken Des Compilerbaus

Grundlagen Und Techniken Des Compilerbaus

Niklaus Wirth

de Gruyter Oldenbourg
2011
sidottu
Compiler sind mehr als komplexe Programme, deren Herstellung einigen wenigen, gro en Firmen vorbehalten bleibt. Sie spielen gewisserma en die Rolle der Br cke zwischen Software und Programmiersprache einerseits und Hardware und Rechnerarchitektur andererseits. Deshalb ist das Verst ndnis ihrer Prinzipien und ihrer Struktur f r jeden Informatiker wesentlich. Dieses Buch ist aus der Erfahrung erwachsen, dass neue Lehrstoffe nur dann haften bleiben, wenn sich der Leser auch praktisch mit der Materie befasst. Hier ist das zentrale Anliegen daher der Bau eines kompletten Compilers einer einsatzf higen Programmiersprache und dessen Darlegung in allen Einzelheiten. Dazu wird aufgrund ihres systematischen Aufbaus eine substantielle Untermenge der Sprache Oberon gew hlt und als Zielrechner eine RISC-Architektur, wobei beiden exemplarischer Charakter zukommt.
Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Niklaus Wirth

Vieweg+teubner Verlag
1991
nidottu
In den vergangenen Jahren wurde die Programmierung wm Rechenanlagen als diejenige Disziplin erkannt, deren Beherrschung grundlegend und entscheidend für den Erfolg vieler Entwicklungsprojekte ist und die wissenschaftlicher Behandlung und Darlegung zugänglich ist Vom Handwerk stieg sie zur akademischen Disziplin auf. Die ersten hervorragenden Beiträge zu dieser Entwicklung wurden von E. W. Dijkstra und C. A. R. Hoare geliefert Dijkstra's Notes on Struetured Programming [6J führten zu einer neuen Betrachtung der Programmierung als wissenschaftliches Thema und als intellektuelle Herausforderung. Sie bahnten den Weg zu einer "Revolution" in der Programmierung [35J. Hoare's An Axiommic Ba3is for Computer Programming [10J zeigte deutlich, dass Progamme einer exakten Analyse nach mathematischen Grundsätzen zugänglich sind. Beide Artikel argumentieren überzeugend, dass viele Programmierfehler vermieden werden können, wenn man den Programmierern die Methoden und Techniken, die sie bisher intuitiv und oft unbewusst verwendeten, zur Kenntnis bringt Diese Artikel konzentrierten sich auf die Aspekte des Aufbauens und Analysierens von Programmen oder, genauer ausgedruckt, auf die Struktur der durch die Progammtexte dargestellten Algorithmen. Es ist jedoch völlig klar, dass ein systematisches und wissenschaftliches Angehen der Konstruktion von Programmen seine grösste Wirkung im Fall grosser komplexer Programme hat, die komplizierte Datenmengen bearbeiten. Folglich muss eine Methodik des Programmierens auch alle Aspekte der Datenstrukturierung behandeln. Programme sind letztlich konkrete Formulierungen abstrakter Algorithmen, die sich auf bestimmte Darstellungen und Datenstrukturen stützen. Einen wesentlichen Beitrag, Ordnung in die verwirrende Vielfalt der Terminologie undKonzepte von Datenstrukturen zu bringen, leistete Hoare durch seine Notes on Daltl Strueturing [13J.
Algorithmen und Datenstrukturen mit Modula - 2

Algorithmen und Datenstrukturen mit Modula - 2

Niklaus Wirth

Vieweg+teubner Verlag
1989
nidottu
Der moderne Digital-Computer wurde entwickelt, um komplizierte und zeitraubende Berechnungen zu erleichtern und zu beschleunigen. Bei den meisten Anwendungen spielt seine Fähigkeit, grosse Mengen von Informationen zu speichern und wieder zugänglich zu machen, die wichtigste Rolle (und wird als Haupteigenschaft betrachtet): seine Fähigkeit zu rechnen, d.h. zu kalkulieren, Arithmetik auszuführen, ist in vielen Fällen nahezu belanglos. In allen diesen Fällen stellt die grosse Menge an Information, die in irgendeiner Weise verarbeitet werden muss, eine Abstraktion eines Teils der realen Welt dar. Die der Rechenanlage zur Verfügung stehende Information besteht aus einer ausgewählten Menge von Daten über die reale Welt, nämlich der für das vorliegende Problem als wichtig erachteten Menge, von der man annimmt, dass damit die gewünschten Resultate erzielt werden können. Die Daten stellen eine Abstraktion der Wirklichkeit dar, weil die für dieses bestimmte Problem nebensächlichen und belanglosen Eigenschaften und Besonderheiten der realen Objekte unberücksichtigt bleiben. Eine Abstraktion ist somit auch eine Vereirifachung der Tatsachen. Als Beispiel können wir die Personalkartei eines Arbeitgebers betrachten. Jeder Angestellte ist in dieser Kartei (abstrahiert) vertreten durch eine Menge von Daten, die für den Arbeitgeber, bzw. für seine Abrechnungen wichtig sind. Diese Daten enthalten einige Kennzeichen des Arbeitnehmers, wie z.B. seinen Namen und sein Gehalt. Sehr wahrscheinlich werden jedoch in diesem Zusammenhang unwichtige Angaben, wie Haarfarbe, Gewicht und Grösse nicht vermerkt sein.
Digital Circuit Design for Computer Science Students

Digital Circuit Design for Computer Science Students

Niklaus Wirth

Springer-Verlag Berlin and Heidelberg GmbH Co. K
1995
nidottu
This book emerged from lecture notes of a course taught in the second year to students of Computer Science at the Federal Institute of Tech­ nology, Zurich. The topic of hardware design plays a relatively minor role in Compu­ ter Science curricula at many universities. Most courses concentrate on the various aspects of theory, software, and of information sys­ tems. Students therefore obtain few opportunities to deal with con­ crete engineering problems and physical devices. We consider this as rather unfortunate, particularly for technical universities. As a result, we observe a growing gap between interest in and understanding of design issues involving not only software but also hardware and inter­ faces. This is regrettable at a time when new and advanced solutions to many problems are often crucially influenced by recent hardware de­ velopments, at a time when the engineer needs to be competent in both software and hardware issues in order to fmd an optimally inte­ grated, competitive solution. It turns out that the hesitation of many students in Computer Science to take an active interest in hardware - his or her daily tool! - does not only stem from a preference of "clean", abstract concepts with a corre­ sponding distaste for dealing with concrete components, construction techniques, and the "dirty" realities inflicted by nature, but also stems from the lack of a bridge between the two realms.
Programming in Modula-2

Programming in Modula-2

Niklaus Wirth

Springer-Verlag Berlin and Heidelberg GmbH Co. K
2011
nidottu
This text is an introduction to programming in general, and a manual for programming with the language Modula-2 in particular. It is oriented primarily towards people who have already acquired some basic knowledge of programming and would like to deepen their understanding in a more structured way. Neveltheless, an introductory chapter is included for the benefit of the beginner, displaying in a concise form some of the fundamental concepts of computers and their programming. The text is therefore also suitable as a self-contained tutorial. The notation used is Modula-2, which lends itself well for a structured approach and leads the student to a working style that has generally become known under the title of structured programming. As a manual for programming in Modula-2, the text covers practically all facilities of that language. Part 1 covers the basic notions of the variable, expression, assignment, conditional and repetitive statement, and array data structure. Together with Palt 2 which introduces the important concept of the procedure or subroutine, it contains essentially the material commonly discussed in introductory programming courses. Part 3 concerns data types and structures and constitutes the essence of an advanced course on programming. Palt 4 introduces the notion of the module, a concept that is fundamental to the design of larger programmed systems and to programming as team work. The most commonly used utility programs for input and output are presented as examples of modules.