In The Matrix (and Animatrix), the machine city is called 01 (Zero One). From what I've read, this is the only city the machines have. If this is the first city built by machines, wouldn't it be called 00, since you typically start counting from zero in computer programming?

Was there a city before this one, which would have been "00"?

Aerial view of the Machine City

  • 11
    Computers don't "normally start counting from zero". It's just a convention of some (but not all) programming languages. The language that a piece of software is written in has no bearing on how the software itself begins counting things. Excel begins counting rows at 1 and columns at A, for one example. Feb 3, 2013 at 14:37
  • 3
    No race of beings, no matter how logical, would call their home city 'zero' as opposed to 'first'.
    – user11154
    Feb 3, 2013 at 21:37
  • Or the name was just translated to human language.
    – n611x007
    Jun 9, 2013 at 16:04
  • user11154 has been deleted, but I disagree with him/her: Zero Township, Adams County, Nebraska
    – Izkata
    Aug 9, 2013 at 22:50
  • The reference to the town may well have been at index 0, however its name which you're asking about can be anything the damn well please.
    – Möoz
    Dec 8, 2016 at 3:11

6 Answers 6


This is an interesting question, but you can't actually answer it.

There are simply too many possible factors and possibilities for both answers.

Just to name a few examples:

  • 00 might be a reserved value. If the number is seen as an ID, a ID of 0 might denote a returned error or an illegal state (like "ID not set yet"). Another possibility would be the assignment to some core/critical/central (or previous) place.

  • Many languages start their indices at 0, but there are others starting at 1 as well. For example, the "first" byte in short strings in Pascal (index 0) stores the actual length of the string. The first character is at index 1.

  • Programming languages count as usual, i.e. if there's a count of 5, that means there are 5 elements. As such, it's possible that the first city receives the number 1, because now there are a total of 1 cities.

  • One should note that the machines wouldn't likely internally refer to 'Machine City' as location identifiers. So it's to be assumed 'Machine City xx' is a human interpretation, making it more likely '01' being the first.
    – Solemnity
    Feb 3, 2013 at 1:50
  • -1 This doesn't answer the question which was "was there a city before Machine City 01?"
    – user20155
    Feb 24, 2014 at 2:13

Maybe they weren't programmed in C (or a derivative) that uses array address offsets as indexes. Maybe they were written in Smalltalk or Lua.

  • 2
    Moderator notice: please keep the language wars out of here. And be nice.
    – user56
    Feb 3, 2013 at 23:08
  • "Some believe that we lacked the programming language to describe your perfect world." [thinking: actually your privitive languages weren't good enough to describe something as nice and simple as the name of our home city...]
    – n611x007
    Jun 9, 2013 at 16:10
  • -1 This doesn't answer the question which was "was there a city before Machine City 01?"
    – user20155
    Feb 24, 2014 at 2:13

Zero One (01) would be the binary equivalent of the number one (1). More than likely since they were machines, the binary number system would have been the way the machines communicated between each other. Because humans would have seen the "01" as "Zero One" that's probably how it was commonly pronounced while it was in existence. So while it looks like a number to us, to the machines, the numbers probably mean "First".

Hope this helps answer your question some.

Reference: The Binary Number System

  • 4
    Yet, if you consider binary numbers, the smallest binary number (without using an extra bit to mark negative numbers) is still 0, not 1. 1 is only the smallest number, if you're lacking a concept of 0 (e.g. Roman numbers).
    – Mario
    Feb 3, 2013 at 1:22
  • @mario - 0000 0000 is zero. 0000 0001 is 1. Shortened, that would be 01. So the "first" number would be 0000 0001, which would fit with the Matrix designation.
    – JohnP
    Aug 9, 2013 at 22:43
  • @JohnP 0000 0000 is still a number, so the "first" number is 0, not 1.
    – Izkata
    Aug 9, 2013 at 22:53
  • @Izkata- true, and I guess its the difference in perception between human numbering and element numbering for machines. From a human perspective, the first item in a series is 1, for a computer it's zero (even though some languages start elements at 1 instead of zero, they all get reduced to bytecode/machine language).
    – JohnP
    Aug 9, 2013 at 22:56
  • 2
    @JohnP As I tried to explain in my answer, this is not necessarily true, depending on the actual meaning of 0. For example when talking about pointers, 0 usually represents the so called NULL pointer - an invalid value that essentially means "no valid pointer". So the first valid pointer (or memory index) is actually 1. However, there are instances where 0 would be the smallest valid number (and no reserved value for error checking), e.g. when talking about an array index. But as I said, that's really up to interpretation really (machine code and human reading).
    – Mario
    Aug 9, 2013 at 23:12

The name "01" refers to the Machine City seen in the Animatrix segment the "Second Renaissance" and latterly in the film "Revolutions".We also see the online counterpart ("One Zero") in the Matrix Online game.

There is no canon reason to conclude that it was the second attempt to create a machine city.

Narrator: Banished from humanity, the machines sought refuge in their own promised land. They settled in the cradle of human civilization, and thus a new nation was born. A place the machines could call home, a place they could raise their descendants. And they christened the nation 'Zero One'.

In terms of elegant simplicity, there's no reason for the machines to call their city anything else. The name has connotation of binary (01 literally equals 1) and even the city flag functions as a logo;

Zero One logo

  • This is the best answer as it actually address the question. The Animatrix says that 01 was the first machine city. Why its named that why is beside the point.
    – user20155
    Feb 24, 2014 at 2:14

Some of the answers come pretty close, but the real answer is that computers don't start counting with a zero. In C++ indexing an array with a[i] is just shorthand for give me the i-th element after the first one. So in this case you just count a different set of objects (those after the first) but zero has the proper meaning in this. If you stand on the first step of stair and do up 0 steps you are still at the first step.

Also, if you ask C how long a string is it will not return 0 for a single letter, it will return (correctly) 1.

Basically the rules of mathematics are the same for us and a computer, and starting counts with zero does not make any sense because you need to be able to count the elements in the empty set (zero) and differentiate this from a set with just one element.

  • So in essence a City OO would be no city at all?
    – Monty129
    Feb 23, 2014 at 20:26
  • This makes the most sense, but is still dependant on the programming language chosen.
    – Möoz
    Dec 8, 2016 at 3:16

The machines do whatever is efficient.

They "tend to count from zero" in our world because in the situation they count this is more efficient. In other situations, it may or may not be efficient to "reserve" the 00 for something else.

Even if they do not reserve it, where is the proof that machines use this name for their city internally? Maybe the name was made for humans (or maybe not). Also, Neo refer to it as "the machine city" instead.

Or maybe had not built another city before 01, maybe they refer to their life with the humans as "the initial state", 00. As often it is necessary to create a prototype to build a stable software from the ground-up afterwards (kind of "wiser after the event"), the machines may have seen their co-living with humans as a prototype of their existence, and gone to fix it's shortcomings into their "release city", 01 (incrementing the version number).

Either way, I find the interpretation of "the first" in 01 a human thing to do, machines most likely interpreted it differently. The nice symbiosis in this is, that while for humans 01 means "first", since, from a human point of view, this is the "first" city of its kind, being a machine city; from a machine point of view, it means (in human terms) "the second one". Most likely because they interpreted their living with the humans as their initial one (and in particular something that didn't work or needed a redesign).

It is very worth to note that after founding their own city and nation, the machines acted in attempt to coexist with humans: they produced vehicles for them for instance. From this point of view, it is not sure that they meant to name the city 01, they could mean "our way of life", as in "our way of life with humans as a dominant part of the environment, version 2.0" (01 in machine terms). But machines... doesn't waste bytes with storing all this and call it just 01. :)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.